Stellar Blade Un'esclusiva PS5 che sta facendo discutere per l'eccessiva bellezza della protagonista. Vieni a parlarne su Award & Oscar!

Excel Forum Per condividere esperienze su Microsoft Excel

macro per creare un pdf costitutuito di due fogli di lavoro

  • Messaggi
  • OFFLINE
    Simonbiagio Sileci
    Post: 1
    Registrato il: 25/10/2018
    Utente Junior
    2010
    00 07/04/2020 12:26
    Buongiorno a tutti,
    ho la necessità di creare un file pdf composto da due fogli di lavoro di uno stesso file excel.
    Premetto che capisco poco o nulla di progettazione macro, quindi mi rivolgo a voi.
    Ad oggi ho trovato una macro che permette di creare il pdf del foglio di lavoro in cui si trova il pulsante che ho creato, ed è la seguente:



    Sub Salvainpdf()
    Dim ws As Worksheet
    Dim strIndirizzo As String
    Dim myFile As Variant
    Dim strFile As String
    On Error GoTo errHandler

    Set ws = ActiveSheet

    'apre la finestra di dialogo per il salvataggio dei file
    'la cartella di default è la stessa della cartella di excel
    strFile = Replace(Replace(ws.Name, " ", ""), ".", "_") _
    & "_" _
    & Format(Now(), "yyyy-mm-dd\_hh-mm") _
    & ".pdf"
    strFile = ThisWorkbook.Path & "\" & strFile

    myFile = Application.GetSaveAsFilename _
    (InitialFileName:=strFile, _
    FileFilter:="PDF Files (*.pdf), *.pdf", _
    Title:="Seleziona la cartella e inserisci il nome del file da salvare")

    If myFile <> False Then
    ws.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=myFile, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

    MsgBox "Il file PDF è stato salvato."
    End If

    exitHandler:
    Exit Sub
    errHandler:
    MsgBox "Non ho potuto salvare il file PDF"
    Resume exitHandler

    End Sub


    E' possibile modificarla per far si che generi il pdf unico dei due fogli?

    Vorrei inoltre che il file non venisse rinominato con il nome del foglio di lavoro, ma che mantenesse il nome originale del file excel.

    Grazie a chi vorrà aiutarmi.
    Saluti.
    Simone
  • ABCDEF@Excel
    00 07/04/2020 13:21
    Da provare
    Sub Salva_fogli_PDF()
    Dim Nome As String, spth As String
    spth = ThisWorkbook.Path & "\"
    Nome = Mid(ThisWorkbook.Name, 1, InStr(ThisWorkbook.Name, ".") - 1)
    Sheets(Array(1, 2)).Select ' Solo dall'editor puoi capire il numero
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=spth & Nome & ".pdf"
    End Sub
    ...
  • OFFLINE
    Simonbiagio Sileci
    Post: 1
    Registrato il: 25/10/2018
    Utente Junior
    2010
    00 07/04/2020 15:52
    Grazie mille.
    Funziona al primo tentativo!
    Alla prossima.
    Saluti.
    Simone