Ciao
Sono Abdal e sarei felice di aiutarti con la tua domanda.
Ecco una macro VBA che stamperà un report multipagina in singoli file con intestazione dal campo "Team" e lo salverà in una cartella sulla scrivania:
Sub PrintReport()
Dim i come intero
Dim j come intero
Dim LastRow come Long
Dim FolderPath come stringa
Nome file dim come stringa
FolderPath = "C:\Users\YourUsername\Desktop\Reports" ' Modificare questo valore nel percorso della cartella desiderata
LastRow = Cells(Rows.Count, 1). Fine(xlUp). Riga ' Cambia 1 nella colonna in cui sono memorizzati i nomi dei tuoi team
For i = 2 To LastRow ' Change 2 to the row number where your data starts
ActiveSheet.PageSetup.CenterHeader = Cells(i, 1). Valore ' Change 1 alla colonna in cui sono memorizzati i nomi dei team
FileName = Cells(i, 1). Valore & ".pdf" ' Modifica 1 nella colonna in cui sono memorizzati i nomi dei tuoi team
ActiveSheet.PrintOut From:=i, A:=i, Copie:=1, Preview:=False, ActivePrinter:= _
"Microsoft Print to PDF", PrintToFile:=True, PrToFileName:=FolderPath & FileName ' Change "Microsoft Print to PDF" con il nome della stampante desiderato
Avanti i
Fine sub
Per utilizzare questa macro, è necessario aprire il file di Excel e premere ALT+F11 per aprire Visual Basic Editor. Quindi, inserisci un nuovo modulo e incolla il codice sopra nel modulo. Infine, salvare il file con estensione .xlsm (Excel Macro-Enabled Workbook) ed eseguire la macro facendo clic sul pulsante "Esegui" o premendo F5. La macro stamperà ogni pagina del report in un file PDF separato, denominato con il nome del team, e lo salverà nella cartella specificata.
Spero che questa informazione aiuti.
Saluti
Abdal
Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.