XL 2016 Ouverture d'un onglet avec CommandButton sur Userform

JPrev

XLDnaute Junior
Bonjour,

Pas doué avec les Userform (mais j'y travaille), j'ai créé un Userform à l'ouverture du fichier avec 2 choix possibles (2 boutons), j'aimerais qu'en cliquant sur le bouton choisi, le fichier m'affiche l'onglet principal du fichier ("2.FORMULAIRE" le même pour les 2 boutons).
1658388332333.png


La seule différence entre les 2 boutons, ce serait la valeur de la cellule "I5".

J'ai tenté un code qui n'a pas l'air de marcher...

VB:
Private Sub CommandButton1_DoubleClick()
Sheets("2.FORMULAIRE").Visible = True
Range("I5").Value = "Presqu'accident"
End Sub

Private Sub CommandButton2_DoubleClick()
Sheets("2.FORMULAIRE").Visible = True
Range("I5").Value = "Situation Dangereuse"
End Sub

Private Sub CommandButton1_Click()
Sheets("2.FORMULAIRE").Visible = True
Range("I5").Value = "Presqu'accident"
End Sub

Private Sub CommandButton2_Click()
Sheets("2.FORMULAIRE").Visible = True
Range("I5").Value = "Situation Dangereuse"
End Sub

Je n'arrive pas à trouver sur les discussions présentes mes erreurs, est-ce que quelqu'un peut m'aider? :)

Merci d'avance et bonne journée,

JPrev
 

Int0x

XLDnaute Occasionnel
Bonjour et merci pour vos retours,

J'ai effectué les modifications mais je n'arrive toujours pas à afficher ma feuille, je clique sur les boutons pour rien.

Une autre solution à tester? :(

JPrev
Salut,

Si tu lis ton code, ça donne :
- Affiche l'onglet "2.Formulaire"
- Remplis en I5 sur l'onglet actif (celui où il y'a les boutons) la valeur "xxx"

Il manque juste la sélection de l'onglet que tu viens d'afficher
VB:
Private Sub CommandButton1_Click()
With Sheets("2.FORMULAIRE")
       .Visible = True
       .activate
       .Range("I5").Value = "Presqu'accident"
End With
unload userform1
End Sub
 
Dernière édition:

JPrev

XLDnaute Junior
Salut,

Si tu lis ton code, ça donne :
- Affiche l'onglet "2.Formulaire"
- Remplis en I5 sur l'onglet actif (celui où il y'a les boutons) la valeur "xxx"

Il manque juste la sélection de l'onglet que tu viens d'afficher
Merci pour ton retour, j'ai effectué la modif avec UnLoad UserForm1, ça marche également pour enlever le UserForm par contre je n'ai plus rien d'affiché derrière.

Le fichier reste ouvert (je le vois dans l'explorateur), mais rien à l'écran!

JPrev
 

Int0x

XLDnaute Occasionnel
Re,

As-tu essayé le mode "pas à pas" ?
En te mettant dans ton code et en appuyant sur F8, tu vas avancer progressivement dans celui-ci et voir ce qu'il se passe. Tu vas donc voir si la logique attendue se déroule comme prévu et aussi à quel moment cela coince ou ne fait pas ce qui est voulu ! Tu appuies sur F8, ça lance la première ligne. Tu rappuies sur F8, ça passe sur la seconde ligne, etc...

Peux-tu essayer le mode pas à pas avec ce code là sur ton bouton "Situation dangereuse" ?
Normalement, le code doit :
  • Afficher ta feuille Formulaire
  • Se positionner dessus
  • Remplir "Situation Dangereuse" en I5
  • Décharger / Masquer le Userform

VB:
Private Sub CommandButton2_Click()
    Sheets("2.FORMULAIRE").Visible = True
    Sheets("2.FORMULAIRE").activate
    Sheets("2.FORMULAIRE").[I5] = "Situation Dangereuse"
    Unload UserForm1
End Sub
 

Statistiques des forums

Discussions
314 634
Messages
2 111 435
Membres
111 136
dernier inscrit
Ahmad Ibnou