Come inviare il record corrente a Word 2000 con l'automazione

Traduzione articoli Traduzione articoli
Identificativo articolo: 210271 - Visualizza i prodotti a cui si riferisce l?articolo.
Per la una versione di Microsoft Access 97 di questo articolo, vedere 131583.
Avanzate: Richiede la codifica degli esperti, interoperabilità e competenze multiutente.

Espandi tutto | Chiudi tutto

In questa pagina

Sommario

Questo articolo viene illustrato come unire il record corrente in un oggetto di Microsoft Access in un documento Microsoft Word, per stampare, quindi chiudere Microsoft Word.

Informazioni

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia espressa o implicita. Questo include, ma non è limitato a, le garanzie implicite di commerciabilità o idoneità per uno scopo specifico. Questo articolo si presuppone che conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug di procedure. Tecnici del supporto Microsoft possono spiegare la funzionalità di una particolare procedura, ma in nessun sono caso a modificare questi esempi per fornire funzionalità aggiuntive o creare procedure per soddisfare specifiche esigenze. Microsoft Word versione 97 e versioni successive utilizzare il Visual Basic, Applications Edition modello, anziché il modello flat del comando di WordBasic utilizzata in alcune versioni precedenti.

Creazione di un documento di Microsoft Word

  1. Avviare Microsoft Word e creare il nuovo documento seguente:
    Nome e cognome
    Indirizzo
    CAP Città, regione,

    Gentile formula,

    Northwind Traders desidera di ringraziamento per
    l'impiego durante l'anno scorso. Di seguito
    si noterà che la foto. Se non si tratta di
    immagine più recente, farci, di sapere.

    Foto

    Distinti saluti,

    Northwind Traders
  2. Creare un segnalibro in Microsoft Word per le parole "First,""Last," "indirizzo", "città," "regione,""CAP," "formula" e "foto. Per effettuare questa operazione, attenersi alla seguente procedura:
    1. Evidenziare la parola "First" e quindi premere CTRL+C.
    2. Scegliere segnalibro dal menu Inserisci .
    3. Fare clic nella casella Nome segnalibro , premere CTRL + V e quindi fare clic su Aggiungi .
    4. Ripetere i passaggi a c per ciascuna delle parole rimanenti, sostituendo la parola per la parola "First" in procedura a e c.
  3. Salvare il documento come C:\MyMerge.doc e chiudere Microsoft Word.

Invio di dati a Microsoft Word da un form di Microsoft Access

  1. Avviare Microsoft Access e aprire il database di esempio Northwind.mdb.
  2. Impostare un riferimento a Microsoft Word 9.0 Object Library. Per effettuare questa operazione, attenersi alla seguente procedura:
    1. Aprire eventuali moduli in visualizzazione Struttura.
    2. Nel menu Strumenti , fare clic su riferimenti .
    3. Fare clic su selezionare la casella di controllo di Microsoft Word 9.0 Object Library nella casella Riferimenti disponibili . Se tale selezione non viene visualizzato, cercare Msword9.olb, che viene installato per impostazione predefinita in c:\Programmi\Microsoft Office\Office cartella.
    4. Fare clic su OK.
    5. Chiudere il modulo.
  3. Aprire la maschera Impiegati in visualizzazione struttura.
  4. Aggiungere al form un pulsante di comando e impostare le proprietà seguenti:
       Name: MergeButton
       Caption: Send to Word
    					
  5. Impostare la proprietà di OnClick del pulsante di comando sulla routine evento riportata di seguito:
    Private Sub MergeButton_Click()
        On Error GoTo MergeButton_Err
    
        Dim objWord As Word.Application
    
        'Copy the Photo control on the Employees form.
        DoCmd.GoToControl "Photo"
        DoCmd.RunCommand acCmdCopy
    
        'Start Microsoft Word 97.
        Set objWord = CreateObject("Word.Application")
    
        With objWord
            'Make the application visible.
            .Visible = True
    
            'Open the document.
            .Documents.Open ("C:\MyMerge.doc")
    
            'Move to each bookmark and insert text from the form.
            .ActiveDocument.Bookmarks("First").Select
            .Selection.Text = (CStr(Forms!Employees!FirstName))
            .ActiveDocument.Bookmarks("Last").Select
            .Selection.Text = (CStr(Forms!Employees!LastName))
            .ActiveDocument.Bookmarks("Address").Select
            .Selection.Text = (CStr(Forms!Employees!Address))
            .ActiveDocument.Bookmarks("City").Select
            .Selection.Text = (CStr(Forms!Employees!City))
            .ActiveDocument.Bookmarks("Region").Select
            .Selection.Text = (CStr(Forms!Employees!Region))
            .ActiveDocument.Bookmarks("PostalCode").Select
            .Selection.Text = (CStr(Forms!Employees!PostalCode))
            .ActiveDocument.Bookmarks("Greeting").Select
            .Selection.Text = (CStr(Forms!Employees!FirstName))
    
            'Paste the photo.
            .ActiveDocument.Bookmarks("Photo").Select
            .Selection.Paste
        End With
    
        'Print the document in the foreground so Microsoft Word will not close
        'until the document finishes printing.
        objWord.ActiveDocument.PrintOut Background:=False
    
        'Close the document without saving changes.
        objWord.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
    
        'Quit Microsoft Word and release the object variable.
        objWord.Quit
        Set objWord = Nothing
        Exit Sub
    
    MergeButton_Err:
        'If a field on the form is empty, remove the bookmark text, and
        'continue.
        If Err.Number = 94 Then
            objWord.Selection.Text = ""
            Resume Next
    
        'If the Photo field is empty.
        ElseIf Err.Number = 2046 Then
            MsgBox "Please add a photo to this record and try again."
        Else
            MsgBox Err.Number & vbCr & Err.Description
        End If
    
        Exit Sub
    End Sub
    					
  6. Salvare la maschera Impiegati e aperta in form visualizzare.
  7. Fare clic su Invia Word per avviare Microsoft Word, per unire i dati dal record corrente della maschera in MyMerge.doc, per stampare il documento, quindi chiudere Microsoft Word.
Nota : quando si utilizza questo metodo di inserimento del testo in un documento di Word, si sta eliminando il segnalibro quando si inserisce il contenuto di campi di record. Se si desidera fare riferimento il testo immesso nel documento, è necessario segnalibro. È possibile utilizzare nell'esempio riportato di seguito per aggiungere il segnalibro "Cognome" al testo inserito da un campo del record "Cognome".
.ActiveDocument.Bookmarks("Last").Select
.Selection.Text = (CStr(Forms!Employees!LastName))

'Add this line to reapply the bookmark name to the selection.
.ActiveDocument.Bookmarks.Add Name:="Last",Range:=Selection.Range
				
questa macro può essere utilizzata per simulare un mailmerge in Word che include un campo di immagine da un record di Access, inserendo il codice riportato sopra in un for... Next , While... Wend , o for... Each ciclo.

Riferimenti

Per ulteriori informazioni sull'automazione tra Microsoft Access e Microsoft Word, scegliere Guida in linea di Access dal menu Guida , digitare la condivisione dei dati tra applicazioni, dati di unione verrà. nell'Assistente di Office o nella ricerca libera e scegliere il pulsante Cerca per visualizzare gli argomenti restituiti.

Per ulteriori informazioni sui segnalibri, scegliere Guida Microsoft Word dal menu ? , digitare i segnalibri in Office Assistant o la libera e quindi fare clic su Cerca per visualizzare gli argomenti restituiti.

Proprietà

Identificativo articolo: 210271 - Ultima modifica: mercoledì 11 ottobre 2006 - Revisione: 4.2
Le informazioni in questo articolo si applicano a:
  • Microsoft Access 2000 Standard Edition
  • Microsoft Word 2000 Standard Edition
Chiavi: 
kbmt kbautomation kbfaq kbhowto kbmacro kbprogramming KB210271 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 210271
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com