Problema su stampa word con segnalibro e salvataggio in formato .pdf

di il
1 risposte

Problema su stampa word con segnalibro e salvataggio in formato .pdf

Ho una form di inserimento dati.
Do dei nomi per essere più chiaro

Do dei nomi per essere piu chiaro
questa è la frmAnagrafica


Al termine devo produrre una stampa su documento word.
Il documento ha una parte di testo precompilata nella quale devo inserire i dati inseriti nella frmAnagrafica
Ho creato pertanto un metodo nel quale effettuo la personalizzazione dei bookmarks impostati nel documento con i valori recuperati dopo il salvataggio dei dati della frmAnagrafica.

il codice è il seguiente:

Sub openDocWord(Modulo As String, Utente As String)

Dim DirectoryModelli As String
Dim DirectoryStampePdf As String
Dim EstensionePdf As String
Dim EstensioneOdt As String
Dim DataDelGiorno As String
Dim NomeFilePdf As String
Dim FilePdf As String
Dim nomedaEditare As String
Dim WordApp As Object 'Word.Application
Dim doc As Object ' Word.Document
Dim cognN As Word.Range

DirectoryModelli = "Modelli"
DirectoryStampePdf = "StampeModelliPdf"
EstensionePdf = ".Pdf"
EstensioneOdt = ".ODT"
DataDelGiorno = Format(Date, "dd/Mm/yyyy")
FilePdf = DataDelGiorno & "_" & Utente & "_" & Modulo

NomeFileWord = "C:\AppTest\" & DirectoryModelli & "\" & Modulo & EstensioneOdt
NomeFilePdf = DirectoryStampePdf & "\" & FilePdf & EstensionePdf

On Error GoTo ERRORE



nomedaEditare = "Pinco Pallo"

     Set WordApp = CreateObject("word.Application")
     WordApp.Visible = False
	Set doc = WordApp.Documents.Open(NomeFileWord)
	doc.Bookmarks("CognomeNome").Range.Text = nomedaEditare

    doc.PrintOut

   ' Esci da Word
     doc.Quit

     ' Chiudi il documento Word
     doc.Close SaveChanges:=False

    ' Rilascia gli oggetti
      Set doc = Nothing
      WordApp.Quit
      Set WordApp = Nothing
          
 'Stampo PDF
doc.ExportAsFixedFormat _
    OutputFileName:=NomeFilePdf, _
    ExportFormat:=wdExportFormatPDF, _
    OpenAfterExport:=False, _
    OptimizeFor:=wdExportOptimizeForPrint, _
    Range:=wdExportAllDocument, _
    From:=1, _
    To:=1, _
    Item:=wdExportDocumentContent, _
    IncludeDocProps:=False, _
    KeepIRM:=False, _
    CreateBookmarks:=wdExportCreateHeadingBookmarks, _
    DocStructureTags:=True, _
    BitmapMissingFonts:=False, _
    UseISO19005_1:=False

       Exit Sub
ERRORE:
            Msg = "Errore " & Str(Err.Number) & " generato da " _
                    & Err.Source & Chr(13) & Err.Description
            MsgBox Msg, vbCritical, "Errore"
               
 End Sub

questo metodo mi va in errore e non riesco a capire il motivo.
A volte riesce a fare la open del documento word sul quale effettuare l'aggiornamento dei bookmarks, altre volte va in errore come evidenziato.

Ho provato ad eseguire anche il codice per il salvataggio in formato .pdf (evidenziato in giallo, ma va in errore.
Vi siete mai trovati a risolvere un problema del genere ?
Grazie

Moreno

1 Risposte

  • Re: Problema su stampa word con segnalibro e salvataggio in formato .pdf

    Ciao, rispondo da cellulare quindi prove non ne posso fare ma per quanto riguarda il salvataggio in PDF penso che per prima cosa tu debba rivedere questa linea di codice:

    FilePdf = DataDelGiorno & "_" & Utente & "_" & Modulo

    perché la variabile DataDelGiorno contiene una data formattata con gli Slash "/" cosa non consentita in un nome di un file in ambiente Windows.

    Prova a fare un Replace sostituendo gli Slash con il punto o il trattino basso (underscore) oppure quando utilizzi il Format specifica direttamente uno dei due caratteri che ti ho suggerito.

Devi accedere o registrarti per scrivere nel forum
1 risposte