stampa modello word con segnalibri da access

Anonimo
2017-07-13T10:23:34+00:00

buon giorno

ho la necessità di stampare dei record da una tabella con l'utilizzo di un documento word con i segnalibro. di seguito il codice utilizzato

che genera l'errore sotto evidenziato del quale non riesco a capirne la ragione.

oltre questo problema ho controllato nei riferimenti se fosse spuntato Microsoft DAO

ed in effetti risultava non spuntato, però dopo aver spuntato l'opzione risponde che è già attivo, il che non è affatto vero!!!! 

grazie per la collaborazione

Dim Wrd As Word.Application, Doc As Word.Document

Dim Rst As DAO.Recordset

Dim Modello As String, NomeFile As String, i As Integer

Dim Record, Record1 As String, SQL As String

Dim ReplSel As Boolean

mypath = "C:\Gestione Edilizia\Documenti da inviare"

Modello = mypath + "" + Elenco7.Column(1) 'Elenco7.Column(1) indica il modello da stampare

Set db = CurrentDb

Set Rst = db.OpenRecordset("select arma_di_Appartenenza,Rappresentante_Arma_Ente,Indirizzo_Civico,Citta_Arma_Ente,Indirizzo_Mail_1,Indirizzo_Mail_2 from [Indirizzi Arma_Ente per invio Comunicazioni]", dbOpenDynaset)

' giustifica

  'Wrd.Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify

'Wrd.Selection.Font.Size = 12

    If Not Rst.BOF Then 'se il recordset non è vuoto

  With Rst

            .MoveFirst 'posizionati sul primo record

            While Not .EOF 'ripeti fino alla fine del recordset:

                'costruisci la riga da scrivere nel documento:

              Record = !Arma_di_Appartenenza

              Record1 = !Rappresentante_Arma_Ente

                Wrd.Selection.TypeText Record & vbCrLf 'scrivi la riga 1 GENERA "ERRORE DI RUN TIME  '91

VARIABILE OGGETTO O VARIABILE DEL  BLOCCO WITH NON IMPOSTATA

                Wrd.Selection.TypeText Record1  'scrivi la riga 2

               .MoveNext 'passa al prossimo record

            Wend 'Not .EOF

        End With 'Rst

        'chiudi e azzera il recordset

        Rst.Close: Set Rst = Nothing

    Else 'Not Rst.BOF

        Wrd.Selection.TypeText "NESSUN RECORD" & vbCrLf

    End If 'Not Rst.BOF

    'ripristina il valore originario dell'opzione

    '"Sostituisci la selezione"

    Wrd.Options.ReplaceSelection = ReplSel

  'azzera le variabili oggetto

    Set Doc = Nothing

    Set Wrd = Nothing

Microsoft 365 e Office | Access | 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
Risposta accettata dall'autore della domanda
Anonimo
2017-07-13T12:04:54+00:00

ciao UGK111,

manca l'apertura di un'istanza di word o l'utilizzo di un'istanza già esistente.

Prova a controllare questo 3d ad esempio :

https://answers.microsoft.com/it-it/msoffice/forum/msoffice\_access-mso\_win10/access-stampa-unione-e-invio-mail-personalizzate/b0aa0faa-28b5-49ff-a196-f73aa88370d0

in ogni caso nella community trovi una marea di esempi di automazione access/word con l'utilizzo di bookmarks.

Ti sprono a cercare...!

se hai problemi siam qua.

Facci sapere.

Ciao, Sandro.

La risposta è stata utile?

0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2017-07-14T05:24:47+00:00

    ciao sandro.

    ti ringrazio per la tua risposta e per l'incoraggiamento. hai ragione tu in effetti avevo saltato a piè pari l'apertura dell'istanza di word. grazie ancora

    La risposta è stata utile?

    0 commenti Nessun commento