Buona sera a tutti!
Tempo fa trovai qui la soluzione al problema, come da oggetto, di salvare ogni stampa unione in singoli pdf.
Ora il Problema è che se nella lista excel ho dei nomi ripetuti mi fa la stampa pdf di un record solo ignorando gli altri.
fare in modo che mi salvi i file con il (1) (2) ecc è possibile?
tipo
Nome (1).pdf
Nome (2).pdf
Nome (3).pdf
Grazie!
Tempo fa trovai qui la soluzione al problema, come da oggetto, di salvare ogni stampa unione in singoli pdf.
Visual Basic:
Sub StampaUnioneSingoli_FILE()
'
' StampaUnioneSingoli FILE nel formato desiderato (docx, rtf o PDF) Macro (di default è docx)
'
'
On Error GoTo ErrH
Dim objWdMailMerge As Word.MailMerge
Dim lngRecNum As Long
Dim strPath As String
Dim strFilename As String
Application.ScreenUpdating = False
'NOTA: AL POSTO DI "C:\STAMPE" METTERE LA DIRECTORY DI APPOGGIO CHE VOGLIAMO
strPath = "C:\STAMPE\"
Set objWdMailMerge = ThisDocument.MailMerge
With objWdMailMerge
.Destination = wdSendToNewDocument
With .DataSource
.ActiveRecord = wdLastRecord
lngRecNum = .ActiveRecord
.ActiveRecord = wdFirstRecord
Do
.FirstRecord = .ActiveRecord
.LastRecord = .ActiveRecord
'NOTA: AL POSTO DI "Proponente" può essere utilizzato uno qualunque dei campi del file excel con cui si fa il merge, fare attenzione che vi sia corrispoindeza tra tutti i campi utilizzati in Word e i campi del foglio Excel, altrimenti la macro non funziona
strFilename = .DataFields("Proponente").Value
If Len(strFilename) Then
' NOTA: A SECONDA DEL TESTO CHE SI VUOLE INSERIRE DOPO IL NOME DEL PROPONENTE, CAMBIARE LA PARTE TRA LE VIRGOLETTE ("_DECRETO")
strFilename = strPath & strFilename & "_Decreto"
objWdMailMerge.Execute
With ActiveDocument
' NOTA: A SECONDA DEL FORMATO CHE DOBBIAMO GENERARE TOGLIERE L'APICE DI IDENTIFICAZIONE COMMENTO DALLA RIGA INTERESSATA
.SaveAs strFilename, wdFormatdoc, AddToRecentFiles:=False
' .SaveAs strFilename, wdFormatRTF, AddToRecentFiles:=False
' .SaveAs strFilename, wdFormatPDF, AddToRecentFiles:=False
.Saved = True
.Close
End With
End If
If .ActiveRecord = lngRecNum Then Exit Do
.ActiveRecord = wdNextRecord
Loop
End With
End With
ExitProc:
Application.ScreenUpdating = True
Set objWdMailMerge = Nothing
Exit Sub
ErrH:
MsgBox Err.Description
Resume ExitProc
End Sub
fare in modo che mi salvi i file con il (1) (2) ecc è possibile?
tipo
Nome (1).pdf
Nome (2).pdf
Nome (3).pdf
Grazie!