Créer un lien vers une feuille Excel avec un bouton VBA

Bonjour à tous,

Pour un travail je crée plusieurs boutons sur une feuille Excel et mon but serait de rediriger l'utilisateur vers d'autres feuilles Excel grâce à ces boutons.

Voici comment sont créés les boutons:

Sub Creation_Etappe()
Dim PosG As Integer
Dim PosH As Integer
Dim Hauteur As Integer
Dim Longueur As Integer
ActiveSheet.Buttons.Delete
ActiveSheet.Shapes.SelectAll
Selection.Delete
Dim Nb
Dim Caption
Dim Name
Dim Col
Dim k
Dim Lin

Sheets("Timeline").Select

Name = Range("C30") 'C'est une chaîne de caractères qui est le nom de la feuille à ouvrir'

Nb = Range("D31")

Col = Chr(Nb + 65)

Caption = Range("C31") & " " & Range("D31")
For k = 0 To 10 'I have chosen a number of 10 cars but it is possible to increase this number'
If Name = Range("A" & 30 + k) Then
Lin = Range("B" & 30 + k)
End If

Next

Lin = Lin + 1

With ActiveSheet.Buttons.Add(Range(Col & Lin).Left, Range(Col & Lin).Top, Range(Col & Lin).Width, Range(Col & Lin).Height)
.OnAction = ""
.Text = Caption
.Name = Name & " " & Range("C31") & " " & Range("D31")
End With

End Sub

J'aimerais beaucoup écrire Sheets("Name").Select dans .OnAction mais ca ne marche pas, j'ai l'impression qu'on ne peut écrire que le nom des fonctions dans .OnAction?

Auriez-vous une solution s'il vous plaît?

Ci-joint mon code.

Merci par avance,

Valentin

9book1.xlsm (18.14 Ko)
6book1.xlsm (18.14 Ko)

Bonjour Valentin3427 et

Une petite présentation ICI serait la bienvenue

Je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum et notamment :

  • Pour plus de lisibilité, utilisez la fonctionnalité (bouton) </> pour insérer vos codes VBA (et si possible aussi pour vos formules Excel).
    image

Ainsi que sur les fonctionnalités du nouveau forum

Sinon, sujet déjà traité sur ce forum, avec une petite recherche on peut trouver
https://forum.excel-pratique.com/excel/programmer-l-affectation-d-une-macro-a-un-bouton-t101905.html

Merci de votre participation

Cordialement

Bonjour Bruno, merci beaucoup pour votre réponse, je ne savais pas du tout comment fonctionnait le forum mais ça y est je me suis présenté!

Cependant, j'ai essayé d'affecter la macro au bouton de manière à ce qu'il me redirige vers la bonne feuille Excel mais cela ne fonctionne toujours pas, j'obtiens cette erreur:

image

Voici mon code modifié:

With ActiveSheet.Buttons.Add(Range(Col & Lin).Left, Range(Col & Lin).Top, Range(Col & Lin).Width, Range(Col & Lin).Height)
    .OnAction = "GAS_Status.xlsm!" & "NA5_Etappe_1" 'GAS_Status.xlsm le nom du fichier excel et NA5_Etappe_1 le nom de la feuille Excel à ouvrir'
    .Text = Caption
    .Name = Name & " " & Range("C31") & " " & Range("D31")
End With

Auriez-vous une explication s'il vous plaît? Merci par avance.

Bien cordialement,

Valentin

Re,

Peut-être essayer

.OnAction = ThisWorkBook.Name & "!NA5_Etape_1"

ATTENTION au nom de la sub dans votre classeur "Etape" ne prends qu'un seul "P" peut-être est-ce là

A+

Rechercher des sujets similaires à "creer lien feuille bouton vba"