Sub ImpressionNom()
Dim mois$, dossier$, Dc As Object, Nom, Noms, Zimp As String
mois = [A2] & " " & [A1]
If Not IsDate(mois) Or IsNumeric([A2]) Then Exit Sub
dossier = ThisWorkbook.Path & "\" & mois & "\" 'chemin à adapter au besoin
If Dir(dossier, vbDirectory) = "" Then MkDir dossier 'crée le dossier
Application.ScreenUpdating = False
With [A9].CurrentRegion
'Liste des noms sans doublons
Set Dc = CreateObject("Scripting.dictionary")
Noms = .Offset(1).Columns(1).Resize(.Rows.Count - 1)
For Each Nom In Noms
Dc(Nom) = Nom
Next Nom
If Dc.exists("") Then Dc.Remove ("")
'Redéfinir la zone d'impression
Zimp = .Parent.PageSetup.PrintArea
.Parent.PageSetup.PrintArea = .Offset(0, 1).Resize(, .Columns.Count - 1).Address 'zone d'impression
'Boucle sur les noms
For Each Nom In Dc.keys
.AutoFilter 1, Nom
.Parent.ExportAsFixedFormat xlTypePDF, dossier & Nom & ".pdf"
Next Nom
'Effacer les filtres
.Parent.AutoFilter.ShowAllData
'Rétablir la zone d'impression
.Parent.PageSetup.PrintArea = Zimp
End With
Application.ScreenUpdating = True
MsgBox "Les " & Dc.Count & " fichiers pdf nominatifs de " & mois & " ont été générés"
End Sub