Condividi tramite

Stampa PDF da Excel in una sola pagina

Anonimo
2017-07-05T14:53:42+00:00

Ciao,

ho un loop che scarica dei dati sul Foglio 1 da una query sql. Quindi ad ogni "giro" viene fatto il refresh dei dati sul foglio.

Sempre ad ogni giro devo poi salvare il risultato della query in formato PDF e uso la sub qui sotto:

Public Sub SalvaPdf(sNomePDF)

    Dim wb As Workbook

    Dim SH As Worksheet

    Set wb = ActiveWorkbook

    Set SH = wb.Sheets(1)

    With SH

        With .PageSetup

            .Orientation = xlLandscape

            .Zoom = False

            .FitToPagesWide = 1

            .FitToPagesTall = False

        End With

        .ExportAsFixedFormat _

                Type:=xlTypePDF, _

                Filename:=sNomePDF & ".pdf", _

                Quality:=xlQualityStandard, _

                IncludeDocProperties:=True, _

                IgnorePrintAreas:=False, _

                OpenAfterPublish:=False

    End With

End Sub

Le colonne della query sono 10 e vorrei che fossero tutte su uno stesso foglio. E in effetti lo fa, ma è tutto piccolo in più crea altre due pagine vuote. Come posso fare perchè i dati occupino interamente la pagina/e?

Grazie per l'eventuale supporto.

S.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

3 risposte

Ordina per: Più utili
  1. Anonimo
    2017-07-05T15:43:42+00:00

    Ciao Simone,

    ho un loop che scarica dei dati sul Foglio 1 da una query sql. Quindi ad ogni "giro" viene fatto il refresh dei dati sul foglio.

    Sempre ad ogni giro devo poi salvare il risultato della query in formato PDF e uso la sub qui sotto:

    Public Sub SalvaPdf(sNomePDF)

        Dim wb As Workbook

        Dim SH As Worksheet

        Set wb = ActiveWorkbook

        Set SH = wb.Sheets(1)

        With SH

            With .PageSetup

                .Orientation = xlLandscape

                .Zoom = False

                .FitToPagesWide = 1

                .FitToPagesTall = False

            End With

            .ExportAsFixedFormat _

                    Type:=xlTypePDF, _

                    Filename:=sNomePDF & ".pdf", _

                    Quality:=xlQualityStandard, _

                    IncludeDocProperties:=True, _

                    IgnorePrintAreas:=False, _

                    OpenAfterPublish:=False

        End With

    End Sub

    Le colonne della query sono 10 e vorrei che fossero tutte su uno stesso foglio. E in effetti lo fa, ma è tutto piccolo in più crea altre due pagine vuote. Come posso fare perchè i dati occupino interamente la pagina/e?

    Grazie per l'eventuale supporto.

    Credo di riconoscere il codice ;-)

    Ti chiederei gentilmente di caricare un esempio di un foglio da salvare in formato Pdf.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2017-07-06T14:21:59+00:00

    Ciao Simone,

    Ciao Norman, dici che è tuo codice? Probabile, consulto molto le varie risposte. E proprio consultandole ho trovato la risposta: prima della creazione del PDF devo impostare l'area di stampa...

    Grazie cmq per tutto il lavoro che fate

    Mi fa piacere che tu abbia risolto il problema e ti ringrazio per il cortese riscontro.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2017-07-06T13:49:53+00:00

    Ciao Norman, dici che è tuo codice? Probabile, consulto molto le varie risposte. E proprio consultandole ho trovato la risposta: prima della creazione del PDF devo impostare l'area di stampa...

    Grazie cmq per tutto il lavoro che fate

    S.

    La risposta è stata utile?

    0 commenti Nessun commento