Esporta con Formattazione - Nome file PDF personalizzato

di il
11 risposte

Esporta con Formattazione - Nome file PDF personalizzato

Buongiorno,
ho un DB con una maschera che raccoglie i dati da una tabella.
Immetto i dati in questa maschera (quelli che non sono presenti nella tabella) e poi dovrei esportare un REPORT in PDF.
tutto avviene alla perfezione ma non riesco a personalizzare il nome del PDF che mi salva.
Ho provato con la Macro: Esporta con formattazione ma mi consente solo di dare il percorso dove salvare il file… ma non anche di personalizzare il nome del file.
Il nome del file lo vorrei personalizzare con un campo contenuto nella tabella o anche nel report (scegliamo la soluzione più semplice) + una parola fissa
Esempio: se il PDF è il contratto della ditta VATTELAPESCA allora il pdf mi deve uscire con il nome VATTELAPESCA - CREDIMPRESA quindi con la parte " - CREDIMPRESA" fissa dopo il nome della ditta.

Grazie

11 Risposte

  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Nella tabella/maschera devi avere un campo che deve contenere (in questo caso) la parola CREDIMPRESA. Con opportuno codice VBA di concatenazione stringa (magari in una variabile), tu otterrai la denominazione del pdf così personalizzata.
    Tu hai usato una macro...quando usavo io le macro vari anni fa non esistevano affatto le variabili. Pare che nelle ultime versioni di Access si possano usare le TempleVar...posso dirti solo questo, ma non le ho mai usate...preferendo la programmazione con codice VBA.
    Altrimenti leggo da qui
    https://support.office.com/it-it/article/azione-di-macro-exportwithformatting-06bb59e2-75c1-410d-9fe7-0a49c2f13c8f
    che potresti ottimizzare la proprietà "File output" concatenando una apposita stringa che prende in considerazione i campi della tua maschera.
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Capisco che forse è meglio usare il VBA e per questo ho utilizzato questo codice :
    
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\PROVA AUTO - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    End Sub
    
    con questo mi crea il file PROVA AUTO - CREDIMPRESA.pdf
    Ho provato a mettere, al posto di PROVA AUTO, [Maschere]![MSC Stato 2]![INTEST] che è il campo maschera che contiene il nome della ditta

    ma non funziona.
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Se usi VBA devi scrivere
    Forms![MSC Stato 2]![INTEST]

    Forse potevi scrivere [Maschere] al posto di Forms se avessi compilato nella proprietà File output della macro.
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Non va
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\Forms![MSC Stato 2]![INTEST] & - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    End Sub
    mi crea il file pdf nominato Forms![MSC Stato 2]![INTEST] & - CREDIMPRESA.pdf"

    Di VBA mi intendo ben poco
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Scrivi così
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    End Sub
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Grazie mille funziona alla grande.
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Salve,
    sono nuovamente qui.
    Vorrei agganciare a questo codice:
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    End Sub
    il comando di aprire il file
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Ti serve Application.FollowHyperlink. Leggi qui
    https://docs.microsoft.com/en-us/office/vba/api/access.application.followhyperlink

    Ti consiglio di usare una variabile di tipo String per scriverci tutta quella "pappardella lunga" che non vale la pena di scrivere 2 volte.
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Ciao,
    applicando quanto mi hai detto ho inserito la stringa e...
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    Application.FollowHyperlink strInput, , True
    End Sub
    NADA non mi apre il file pdf dopo che lo crea nel percorso specificato.
    Poi mi applicherò per la funzione STRINg ma vorrei risolvere questa prima...
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Tutto RISOLTO
    GRAZIE
    Private Sub STPCRED_Click()
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf"
    DoCmd.Close acReport, "Contratto Credimpresa"
    Application.FollowHyperlink "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf", , True
    End Sub
  • Re: Esporta con Formattazione - Nome file PDF personalizzato

    Per usare una variabile di tipo String la devi dichiarare con Dim, poi ne assegni il valore stringa, poi la usi
    Private Sub STPCRED_Click()
    Dim strInput As String
    DoCmd.OpenReport "Contratto Credimpresa", acViewPreview, , , acHidden
    strInput = "\\SERVERHP\Documenti\ServCredimpresa\UFFICIO FIDI\Alessandra\Disposizioni\2018\CONTRATTI\" & Forms![MSC Stato 2]![INTEST] & " - CREDIMPRESA.pdf"
    DoCmd.OutputTo acOutputReport, "Contratto Credimpresa", acFormatPDF, strInput
    DoCmd.Close acReport, "Contratto Credimpresa"
    Application.FollowHyperlink strInput, , True
    End Sub
Devi accedere o registrarti per scrivere nel forum
11 risposte