Te anexo la macro, antes de ejecutarla debes crear una hoja llamada "temp".
También cambia en la macro "Hoja4" por el nombre de tu hoja que contiene las ventas.
Sub Imprimir_Pdf_Por_Vendedor()
'----
' Por Dante Amor
'----
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.StatusBar = False
Set l1 = ThisWorkbook
Set h1 = Sheets("Hoja4") 'hoja con datos
Set h2 = Sheets("temp") 'hoja temporal
col = "A" 'columna clave
ucol = "G" 'ultima columna de datos
fila = 11 'fila inicial de datos
n = Columns(col).Column
h2.Cells.Clear
If h1.AutoFilterMode Then h1.AutoFilterMode = False
h1.Range(h1.Cells(fila - 1, col), h1.Cells(Rows.Count, col)).Copy h2.[A1]
u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
h2.Range("A1:A" & u2).RemoveDuplicates Columns:=1, Header:=xlYes
'
ruta = l1.Path & "\"
u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To u2
Application.StatusBar = "Generando archivo " & i - 1 & " de " & u2 - 1
clave = h2.Cells(i, "A")
If h1.AutoFilterMode Then h1.AutoFilterMode = False
u1 = h1.Range(col & Rows.Count).End(xlUp).Row
h1.Range("A1:" & ucol & u1).AutoFilter Field:=n, Criteria1:=clave
Set l2 = Workbooks.Add
Set h21 = l2.Sheets(1)
u1 = h1.Range(col & Rows.Count).End(xlUp).Row
h1.Range("A1:" & ucol & u1).Copy h21.[A1]
mes = Month(h1.Cells(u1, "D").Value)
año = Year(h1.Cells(u1, "D").Value)
l2.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=ruta & clave & "_" & mes & "_" & año & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
l2.Close False
Next
If h1.AutoFilterMode Then h1.AutoFilterMode = False
Application.StatusBar = False
MsgBox "Archivos creados"
End Sub
Nota: el mes y el año los obtengo de la fecha de la columna D.
'.[Sal u dos. Dante Amor. No olvides valorar la respuesta.
'.[Avísame cualquier duda