Private Sub CommandButton1_Click()
Dim i As Long
Dim k As Long
Dim varrSelected() As Variant
Dim varrToSave As Variant
Dim shActiv As Object
k = -1
Application.ScreenUpdating = False
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
k = k + 1
ReDim Preserve varrSelected(0 To 1, 0 To k)
varrToSave = varrToSave & "/" & ListBox1.List(i)
varrSelected(0, k) = ListBox1.List(i)
varrSelected(1, k) = ThisWorkbook.Sheets(varrSelected(0, k)).Visible
ThisWorkbook.Sheets(varrSelected(0, k)).Visible = xlSheetVisible
End If
Next i
If k > -1 Then
Set shActiv = ActiveSheet
varrToSave = Mid(varrToSave, 2)
varrToSave = Split(varrToSave, "/")
ThisWorkbook.Sheets(varrToSave).Select
'Feuil2 is a CodeName of "Parametres" sheet
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\" & Feuil2.Range("C2").Value & ".pdf"
shActiv.Select
For i = 0 To UBound(varrSelected, 2)
ThisWorkbook.Sheets(varrSelected(0, i)).Visible = varrSelected(1, i)
Next i
MsgBox "Selected sheets were saved in a PDF file.", vbInformation
End If
Application.ScreenUpdating = True
End Sub
Artik