IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Déplacer une image grâce à un curseur [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2012
    Messages : 3
    Par défaut Déplacer une image grâce à un curseur
    Bonsoir à tous,

    Je crois que tous est dans le titre. J'ai commencé à faire un déplacement selon une cellule sélectionnée, mais je n'arrive pas à le faire par rapport à un curseur pouvez vous m'aider s'il vous plaît ?

    voila mon code en vba :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Barrededéfilement2_QuandChangement()
        Shapes("image 1").Top = Target.Top
        Shapes("image 1").Left = Target.Left
    End Sub
    et en pièce jointe la feuille excel pour plus d'explication.

    Merci pour toute vos réponses futures.
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Dans Format de Contrôle de ta barre de défilement, affecte A1 à la cellule liée et Affecter une macro... la macro suivante Defiler crée dans un module standard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Defiler()
    Dim G As Double, L As Double, D As Double
     
    With Worksheets("Feuil1")
        G = .Shapes("Connecteur droit 2").Left
        L = .Shapes("Connecteur droit 2").Width
        D = [A1] / 100
        .Shapes("image 3").Left = G + D * L
    End With
    End Sub
    Le min et le max de la barre de défilement est respectivement 0 et 100.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2012
    Messages : 3
    Par défaut
    Bonjour Mercatog,

    Vraiment merci beaucoup, c'est exactement ce que je voulais faire merci encore

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Pour le fun, une autre approche utilisant les lien hypertextes (sans la barre de défilement).
    Pour cela, il faudra d'abord faire certaines manipulations:

    1. Dans propriétés des 2 shapes, cocher Ne pas déplacer ou dimensionner avec les cellules.

    2. Réduit la largeur des colonnes à partir de la colonne E, jusqu'à la colonne AE (Dans ton cas avec une largeur de 1 pour que ta ligne horizontale occupe la largeur de la plage E:AE

    3. On va colorier la plage E3:AE3 (pour la visualisation de la zone de réaction de la souris)

    4. Insère cette fonction dans un module standard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Public Function Defiler(ByVal Col As Integer)
     
    With Worksheets("Feuil1")
        .Shapes("image 3").Left = .Cells(3, Col).Left
    End With
    End Function
    5. En E3, insère cette formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SIERREUR(LIEN_HYPERTEXTE(Defiler(COLONNE()));"")
    6. Tire la formule jusqu'à AE3

    7. Passe ta souris sur la zone E3:AE3

    Ci-après fichier illustrant la proposition. http://speedy.sh/xEVgF/GOKOROK.xlsm


    PS. Accessoirement, tu peux utiliser ce code de notre fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Function Defiler(ByVal Col As Integer)
     
    With Worksheets("Feuil1")
        If Col < 31 Then .Range(.Cells(3, Col + 1), .Cells(3, 31)).Interior.ColorIndex = 15
        If Col > 5 Then .Range(.Cells(3, 5), .Cells(3, Col - 1)).Interior.ColorIndex = 15
        .Cells(3, Col).Interior.ColorIndex = 3
        .Shapes("image 3").Left = .Cells(3, Col).Left
    End With
    End Function

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2012
    Messages : 3
    Par défaut
    Vraiment super, mais ça fais un peu trop gadget pour le boulot que je dois rendre, juste une barre de défilement c'est suffisant, mais encore merci pour tout à bientôt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Déplacer une image non téléchargée
    Par Asmodean dans le forum Langage
    Réponses: 1
    Dernier message: 05/07/2007, 12h27
  2. Lire une image grâce à une adresse internet
    Par Silverstone dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 26/06/2007, 04h16
  3. Déplacer une image
    Par prgasp77 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 15/05/2007, 17h35
  4. Déplacer une image
    Par rikku84 dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 19/04/2007, 02h00
  5. Créer une image grâce à Delphi
    Par vali dans le forum Delphi
    Réponses: 2
    Dernier message: 29/01/2007, 13h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo