Come copiare dati da Excel a Word utilizzando VBA Excel

Sommario:

Anonim

Per copiare i dati da Excel a un file Word utilizzando VBA, è necessario accedere all'applicazione Word utilizzando Excel VBA. In questo tutorial impareremo come aprire un'applicazione Word, aggiungere un documento e copiare e incollare dati da Excel ad esso.

In questo articolo, utilizzeremo il metodo Early Binding per creare un oggetto dell'applicazione Word invece di utilizzare il late binding. Puoi leggerlo qui in dettaglio.

Il processo di copia dei dati di Excel in un file Word utilizzando Excel VBA

Per copiare i dati da excel in un file word usando VBA, dobbiamo prima aprire l'applicazione Word, ovviamente. Quindi aggiungi un documento (se vuoi un nuovo documento). Copia dati da file excel. Seleziona il paragrafo sul documento e incollalo. Infine salva e chiudi il documento. Ognuno di questi passaggi può essere eseguito facilmente da Excel. Non sarà necessario interagire con il documento di Word.

Cominciamo con un esempio senza addentrarci ulteriormente nella teoria. Perché Iron Man ha detto: "A volte devi correre prima di poter camminare".

Esempio: incolla i dati di Excel in Word utilizzando VBA

Il codice seguente è un esempio di come è possibile copiare un intervallo di Excel e incollarlo in un nuovo documento di Word e salvarlo sull'unità per utilizzarlo in seguito

'Codice VBA da scrivere per copiare dati da Excel a un documento Sub ExcelToWord() 'Utilizzo dell'associazione anticipata Dim wordApp As Word.Application Dim mydoc As Word.Document 'Creazione di una nuova istanza di parola solo se non ci sono altre istanze Imposta wordApp = New Word.Application 'Rendere visibile l'app word wordApp.Visible = True 'Creare un nuovo documento Set mydoc = wordApp.Documents.Add() 'copiare il contenuto dal foglio excel ThisWorkbook.Worksheets("sheet1").Range("A1:g20 ").Copy 'Incolla sul documento mydoc.Paragraphs(1).Range.PasteExcelTable _ LinkedToExcel:=False, _ WordFormatting:=False, RTF:=False 'salva il documento mydoc.SaveAs2 "MyDoc" 'chiude il documento mydoc .Close 'Svuotamento degli Appunti CutCopyMode = False End Sub 

Spiegazione del Codice:

Bene, ho spiegato ogni passaggio nel codice stesso usando i commenti, ma diamo qualche parola sulle linee che abbiamo usato in questo sottotitolo.

"Variabili create dell'applicazione Word e del tipo di documento"

Dim wordApp As Word.Application

Dim mydoc As Word.Document

Qui abbiamo dichiarato due variabili dei tipi richiesti. Possiamo farlo perché abbiamo già aggiunto il riferimento alla parola application. Puoi farlo andando su strumenti nel menu. Trova l'opzione riferimenti e quindi cerca la parola riferimento.

'Creazione di una nuova istanza di parola solo se non ci sono altre istanze

Imposta wordApp = Nuova Word.Applicazione

"Rendere visibile l'app di Word"

wordApp.Visible = True

'Creazione di un nuovo documento

Imposta miodoc = wordApp.Documents.Add()

Nella prima riga sopra, stiamo avviando la variabile wordApp con un oggetto di tipo Word.App utilizzando la parola chiave New. Questo aprirà l'applicazione Word.

Nella seconda riga stiamo rendendo visibile la parola applicazione in modo che possiamo lavorarci.

Nella riga successiva, aggiungiamo un nuovo documento all'applicazione Word utilizzando la funzione Word.Documents.Add(). Questo è memorizzato nella variabile mydoc.

'copiare il contenuto da foglio excel

ThisWorkbook.Worksheets("foglio1").Intervallo("A1:G20").Copia

Qui stiamo semplicemente copiando un intervallo da Excel. Devi averlo fatto prima. È memorizzato negli appunti.

'Incollare sul documento

mydoc.Paragraphs(1).Range.PasteExcelTable _

LinkedToExcel:=False, _

WordFormatting:=False,

RTF:=Falso

Stiamo usando il metodo PasteExcelTable della classe Paragrafo.Range di mydoc per incollare i dati dagli appunti.

'salvare il documento

mydoc.SaveAs2 "MyDoc"

'chiudere il documento

mydoc.Chiudi

"Svuotare gli Appunti"

CutCopyMode = False

Stiamo salvando il documento con il nome MyDoc. Quindi chiudiamo il documento utilizzando la funzione Chiudi. Infine rilasciamo gli appunti per essere utilizzati da altri.

Quindi sì ragazzi, ecco come creare un nuovo documento Word e copiarvi i dati Excel utilizzando VBA. Non sono entrato nei dettagli perché renderebbe l'articolo estenuantemente lungo. Questo era solo per imparare come incollare in un documento di Word tramite Excel. Spero di averti aiutato a capire il processo. Se hai domande su questo articolo, puoi contattarmi tramite la sezione commenti qui sotto.

Iniziare con i moduli utente VBA di Excel| Spiegherò come creare un modulo in excel, come utilizzare il toolbox VBA, come gestire gli input dell'utente e infine come archiviare gli input dell'utente. Esamineremo questi argomenti utilizzando un esempio e una guida passo passo.

Variabili VBA in Excel| VBA sta per Visual Basic for Applications. È un linguaggio di programmazione di Microsoft. Viene utilizzato con applicazioni Microsoft Office come MSExcel, MS-Word e MS-Access mentre le variabili VBA sono parole chiave specifiche.

Ambito variabile VBA di Excel| In tutti i linguaggi di programmazione, abbiamo identificatori di accesso alle variabili che definiscono da dove è possibile accedere a una variabile definita. Excel VBA non fa eccezione. Anche VBA ha identificatori di ambito.

Argomenti ByRef e ByVal | Quando un argomento viene passato come argomento ByRef a una sub o funzione diversa, viene inviato il riferimento della variabile effettiva. Qualsiasi modifica apportata alla copia della variabile si rifletterà nell'argomento originale.

Elimina i fogli senza richieste di conferma utilizzando VBA in Microsoft Excel | Poiché stai eliminando i fogli utilizzando VBA, sai cosa stai facendo. Vorresti dire a Excel di non mostrare questo avviso ed eliminare il dannato foglio.

Aggiungi e salva una nuova cartella di lavoro utilizzando VBA in Microsoft Excel 2016| In questo codice, abbiamo prima creato un riferimento a un oggetto cartella di lavoro. E poi lo abbiamo inizializzato con un nuovo oggetto cartella di lavoro. Il vantaggio di questo approccio è che puoi eseguire facilmente le operazioni su questa nuova cartella di lavoro. Come salvare, chiudere, eliminare, ecc

Visualizza un messaggio sulla barra di stato VBA di Excel| La barra di stato in Excel può essere utilizzata come monitor del codice. Quando il tuo codice VBA è lungo e svolgi diverse attività utilizzando VBA, spesso disabiliti l'aggiornamento dello schermo in modo da non vedere lo sfarfallio dello schermo.

Disattiva i messaggi di avviso utilizzando VBA in Microsoft Excel 2016| Questo codice non solo disabilita gli avvisi VBA, ma aumenta anche l'efficienza temporale del codice. Vediamo come.

Articoli popolari:

50 scorciatoie di Excel per aumentare la produttività | Diventa più veloce nel tuo compito. Queste 50 scorciatoie ti faranno lavorare ancora più velocemente su Excel.

La funzione CERCA.VERT in Excel | Questa è una delle funzioni più utilizzate e popolari di Excel che viene utilizzata per cercare il valore da diversi intervalli e fogli.

CONTA.SE in Excel 2016 | Conta i valori con le condizioni usando questa fantastica funzione. Non è necessario filtrare i dati per contare valori specifici. La funzione Countif è essenziale per preparare la tua dashboard.

Come utilizzare la funzione SOMMA.SE in Excel | Questa è un'altra funzione essenziale della dashboard. Questo ti aiuta a riassumere i valori su condizioni specifiche.