XL 2013 Userform pour générer un mode d'emploi

STARRAG

XLDnaute Nouveau
Bonjour à tous,

Je demande votre aide pour la réalisation d'un de mes projets.

Je veux via excel et VBA générer un mode d'emploi de montage en fonction d'un choix sur un Userform.
userform.JPG

J'ai créé cet userform.
Je veux que lorsque l'on sélectionne :
- le choix 1 (traverse fixe) et que l'on clique sur le bouton générer PDF, la macro doit générer un fichier pdf composé des onglets ONG0 + ONG1 + ONG2 + ONG3 + ONG4 + ONG5 + ONG6 + ONG10
- le choix 2 et que l'on clique sur le bouton générer PDF, la macro doit générer un fichier pdf composé des onglets ONG0 + ONG1 + ONG2 + ONG3 + ONG4 + ONG5 + ONG7 + ONG10
- le choix 3 et que l'on clique sur le bouton générer PDF, la macro doit générer un fichier pdf composé des onglets ONG0 + ONG1 + ONG2 + ONG3 + ONG4 + ONG5 + ONG8 + ONG10
- le choix 4 et que l'on clique sur le bouton générer PDF, la macro doit générer un fichier pdf composé des onglets ONG0 + ONG9 + ONG10

(Je voudrais aussi que lorsque je sélectionne un choix, une image apparaisse)

Le bouton modifier la procédure ferme l'userform.
Le bouton quitter ferme le fichier.

A savoir que mes compétences en VBA sont assez restreinte. Cependant, je souhaite faire quelque chose de fonctionnel et de propre.

J'espère que mes explications sont assez claires, sinon n'hésitez pas à me demander.

Merci d'avance de votre aide.
 

Pièces jointes

  • MODE D'EMPLOI TEST.xlsm
    46.2 KB · Affichages: 32
Solution
Salut,
A tester dans l'userform.
A noter: les optionsbuttons ont déjà une propriété caption pour décrire l'option,
pas besoin de label supplémentaire .
VB:
Private Sub CommandButton_generer_Click()
    Select Case True
        Case OptionButton1:        Filename = OptionButton1.Caption
        Case OptionButton2:        Filename = OptionButton2.Caption
        Case OptionButton3:        Filename = OptionButton3.Caption
        Case OptionButton4:        Filename = OptionButton4.Caption
        Case Else:                 Exit Sub
    End Select
    
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=ThisWorkbook.Path & "\" & Filename & ".pdf", _
        OpenAfterPublish:=True

End Sub

Private Sub...

fanch55

XLDnaute Barbatruc
Salut,
A tester dans l'userform.
A noter: les optionsbuttons ont déjà une propriété caption pour décrire l'option,
pas besoin de label supplémentaire .
VB:
Private Sub CommandButton_generer_Click()
    Select Case True
        Case OptionButton1:        Filename = OptionButton1.Caption
        Case OptionButton2:        Filename = OptionButton2.Caption
        Case OptionButton3:        Filename = OptionButton3.Caption
        Case OptionButton4:        Filename = OptionButton4.Caption
        Case Else:                 Exit Sub
    End Select
    
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=ThisWorkbook.Path & "\" & Filename & ".pdf", _
        OpenAfterPublish:=True

End Sub

Private Sub OptionButton1_Click()
    Image = "FFPJP3.gif"
    Image1.Picture = LoadPicture(Image_Path & "Petanque\" & Image)
    Sheets(Array("ONG0", "ONG1", "ONG2", "ONG3", "ONG4", "ONG5", "ONG6", "ONG10")).Select
End Sub
Private Sub OptionButton2_Click()
    Image = "FFPJP3.jpg"
    Image1.Picture = LoadPicture(Image_Path & "Petanque\" & Image)
    Sheets(Array("ONG0", "ONG1", "ONG2", "ONG3", "ONG4", "ONG5", "ONG7", "ONG10")).Select
End Sub
Private Sub OptionButton3_Click()
    Image = "FFPJP3.gif"
    Image1.Picture = LoadPicture(Image_Path & "Petanque\" & Image)
    Sheets(Array("ONG0", "ONG1", "ONG2", "ONG3", "ONG4", "ONG5", "ONG8", "ONG10")).Select
End Sub
Private Sub OptionButton4_Click()
    Image = "FFPJP3.jpg"
    Image1.Picture = LoadPicture(Image_Path & "Petanque\" & Image)
    Sheets(Array("ONG0", "ONG9", "ONG10")).Select
End Sub

Function Image_Path() As String
Dim objShell As Object
    Set objShell = CreateObject("Shell.Application")
        Image_Path = objShell.Namespace(&H27).self.Path & "\"
    Set objShell = Nothing
End Function
 

Discussions similaires

Réponses
7
Affichages
403

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 814
dernier inscrit
JLGalley