Buongiorno a tutti, sto muovendo i miei primi passi con il VBA, e ho già ricorso al vostro gentilissimo aiuto.
Sto lavorando ad un documento di gestione di magazzino, allego il file di esempio, ed ho la necessità di una macro per salvare una copia del foglio in pdf.
Ho indagato sui Threads già pubblicati e alcuni mi sono tornati utilissimi per redigere la macro, il problema è nell'impaginazione del pdf.
Il nome del pdf è composto dal nome del foglio attivo e dai valori delle celle E2 e K2 separate da "_" e "_R"
Siccome sono presenti molte colonne, ho la necessità di impaginare il documento con tutte le colonne su foglio orizzontale.
Con il registratore di macro ho selezionato layout di pagina e larghezza 1 pagina ed ho inserito il codice ricavato nella macro.
Ho provato e riprovato a spostarlo e a cambiarlo in mille modi, ma non riesco a scrivere la giusta grammatica e così il pdf risulta sempre impaginato male.
Oltre che nel file allegato, riporto di seguito il codice sul quale sto lavorando.
Ringrazio in anticipo chi avrà la pazienza di aiutarmi.
Sub SALVA_COPIA_PDF()
'
'salva nella cartella origine con nome del foglio e celle E2 e K2 separate da "_" e "_R"
With ActiveWorkbook
If .Path = "" Then Exit Sub
pdfFile = .Path & "\" & ActiveSheet.Name & "_" & [E2] & "_R" & [K2] & ".pdf"
'
End With
'
'Imposta la pagina con layout di stampa: tutte le colonne su un unico foglio A4 orizzontale e salva pdf
ActiveWindow.View = xlPageLayoutView
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
.Orientation = xlLandscape
.PaperSize = xlPaperA4
End With
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdfFile _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
' Torna alla visualizzazione del layout di pagina normale
ActiveWindow.View = xlNormalView
End Sub