Problème lors de la création d'un bouton pour changer de page

Julia1049 -  
 Julia1049 -
Bonjour,

J'ai créé un bouton qui me renvoie à une image sur une feuille Excel différente. Cette image est placée en ligne 150 par exemple.
Le problème est que je suis amenée à créer des lignes au dessus de cette image. Et lorsque je clique sur mon bouton, il me renvoie à la ligne 150, et non à l'image qui se trouve plus bas du fait que j'ai ajouté des lignes au dessus.

Avez-vous une solution à me proposer ?

Merci par avance !

9 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Re,

    En ce cas

    ' selectionne la cellule de l'image
    ActiveSheet.Range(ActiveSheet.Shapes("Picture 19").TopLeftCell.Address).Select
    'selectionne l'image
    ActiveSheet.Shapes("Picture 19").Select True

    Cdlmnt
    Via
    1
    1. Julia1049
       
      Merci beaucoup, ça fonctionne !
      0
  2. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Ton image étant insérée dans une cellule, pour la lier à cette cellule (et donc qu'elle se déplace avec elle) : clic droit sur l'image - Taille et propriétés - Propriétés - Cocher Déplacer avec les cellules

    Cdlmnt
    Via
    0
  3. Julia1049
     
    En fait, je veux que l'image se déplace en même temps que la cellule.

    Mon problème est que j'aimerai que mon bouton me renvoie sur mon image et non à la cellule où se trouve l'image. Comme ça je pourrais ajouter des lignes au dessus sans avoir besoin de changer ma macro à chaque fois.

    Je ne sais pas si c'est clair.
    0
  4. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Justement le fait de lier l'image à la cellule comme je te l'ai indiqué précédemment fait qu'elle va se déplacer avec elle lorsque tu rajoutes des lignes

    Ensuite pour que le bouton renvoie à l'image il faut mettre cette ligne dans la code du bouton :
    ActiveSheet.Shapes("Image 1").Select True

    Changer Image 1 pour le nom de l'image s'il est différent

    Cdlmnt
    Via
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Julia1049
     
    Ça ne fonctionne toujours pas :(

    Mes lignes de codes sont les suivantes:

    "Sub Indicateur_de_type_pouce()
    '
    ' Indicateur_de_type_pouce Macro
    '

    '
    Sheets("Instruction").Select
    ActiveWindow.SmallScroll Down:=123
    ActiveSheet.Shapes.Range(Array("Picture 19")).Select
    End Sub"

    J'ai remplacé la 3ème ligne par ce que vous m'avez suggéré et ça ne fonctionne pas non plus
    0
  7. Julia1049
     
    Parce qu'en fait avec cette formule, il me fait descendre jusqu'à la ligne 123 et il sélectionne l'image.

    Mais si l'image se trouve en ligne 160, ça fait pareil. Il descend à la ligne 123, il sélectionne l'image, mais je ne vois pas l'image
    0
  8. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    Si tu veux que l'image soit toujours au même endroit par rapport a la feuille, il faut mettre ceci dans le module de la feuille où se trouve l'image:

    Option Explicit
    Private Sub Worksheet_Activate()
    Dim Valzoum As Integer
     Dim ecran
     Valzoum = ActiveWindow.Zoom
     Set ecran = ActiveWindow.VisibleRange
     With ActiveSheet
     Shapes("Image 1").Left = ecran.Left + 200 'a adapter le nom de la shape ainsi que la distance en pixel du bord gauche
     Shapes("Image 1").Top = ecran.Top + 200 'a adapter le nom de la shape ainsi que la distance en pixel du haut
     End With
    End Sub
    
    


    @+ Le Pivert
    0
  9. Julia1049
     
    Désolée si je ne suis pas clair, ce n'est pas facile à expliquer...

    Je veux que l'image bouge avec la feuille.

    Par exemple, si j'ajoute 30 lignes, je veux que tout se déplace vers le bas de 30 lignes, même mon image.

    Mais du coup je voudrais que ma macro m'amène 30 lignes plus bas aussi, sans avoir besoin de la recréer.

    Ça veut dire que si initialement mon image était ligne 150 et qu'elle a été déplacée ligne 180, j'aimerai que ma macro m'amène à la ligne 180.
    Or actuellement ce n'est pas le cas.
    0
    1. fabien25000 Messages postés 697 Statut Membre 59
       
      Bonjour,
      pourquoi pas utiliser une boucle pour trouver la ligne de l'image?
      0
  10. Julia1049
     
    Ça fonctionne, merci beaucoup !!
    0