Copia informazioni foglio di Word utilizzando VBA in Microsoft Excel
_Se ti viene richiesto di copiare e incollare dati da più fogli di lavoro Excel in MS Word, dovresti leggere questo articolo. In Excel, non esiste tale funzionalità che possa consentire di convertire i dati dalla cartella di lavoro Excel in un file word. L’applicazione Word non può aprire direttamente i file Excel. Tuttavia, i dati di Excel possono essere copiati e incollati in Word e quindi salvati come documenti Word.
Trasferiamo tutti manualmente i dati da Excel a Word, il che a volte diventa noioso quando si tratta di eseguire gli stessi passaggi troppe volte in un giorno; per evitare i passaggi manuali, scriveremo il codice VBA per eseguire tutti i passaggi ._
In questo articolo, ci concentreremo sullo spostamento dei dati da Excel a documento Word. Automatizzeremo l’intera procedura tramite codice VBA. Con il codice macro, puoi semplicemente copiare i dati in un foglio di lavoro alla volta e quindi l’applicazione word verrà avviata automaticamente e il codice VBA utilizzerà il comando incolla per inserire i dati nel file doc.
Per ottenere il codice; dobbiamo seguire i passaggi seguenti per avviare l’editor VB:
Fare clic sulla scheda Sviluppatore Dal gruppo Codice, selezionare Visual Basic
C’è un passaggio importante da non perdere. Clicca su Strumenti per selezionare Riferimenti Scorri verso il basso fino a trovare “Libreria oggetti di Microsoft Word 15.0” Assicurati di selezionare la casella; fare riferimento all’immagine sottostante
-
Copia il codice seguente nel modulo standard
Sub CopyWorksheetsToWord() Dim wdApp As Word.Application, wdDoc As Word.Document, ws As Worksheet Application.ScreenUpdating = False Application.StatusBar = "Creating new document..." Set wdApp = New Word.Application Set wdDoc = wdApp.Documents.Add For Each ws In ActiveWorkbook.Worksheets Application.StatusBar = "Copying data from " & ws.Name & "..." ws.UsedRange.Copy wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.InsertParagraphAfter wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.Paste Application.CutCopyMode = False wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.InsertParagraphAfter If Not ws.Name = Worksheets(Worksheets.Count).Name Then With wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range .InsertParagraphBefore .Collapse Direction:=wdCollapseEnd .InsertBreak Type:=wdPageBreak End With End If Next ws Set ws = Nothing Application.StatusBar = "Cleaning up..." With wdApp.ActiveWindow If .View.SplitSpecial = wdPaneNone Then .ActivePane.View.Type = wdNormalView Else .View.Type = wdNormalView End If End With Set wdDoc = Nothing wdApp.Visible = True Set wdApp = Nothing Application.StatusBar = False End Sub
===
Per testare il codice, inseriamo 2 fogli e aggiungiamo numeri casuali. Di seguito è riportata l’istantanea di entrambi i fogli di lavoro:
1 ° foglio: –
2 ° foglio: –
Dopo aver impostato i dati nei fogli di lavoro; possiamo eseguire la macro L’applicazione Word verrà avviata immediatamente ei dati verranno copiati da tutti i fogli di lavoro in Word; fare riferimento sotto l’istantanea
Se pensi che la copia dei dati sia un’attività ma dovrebbe esserci un’interruzione di pagina tra i dati di ogni foglio di lavoro in modo che chiunque possa facilmente fare la differenza tra i dati di ciascun foglio di lavoro.
I dati sopra verranno copiati da un foglio e quindi il codice VBA si assicurerà di aggiungere un’interruzione di pagina tra le pagine.
Conclusione: in questo modo, possiamo aiutare molti utenti di Microsoft Office che pensano che convertire i dati da file Excel in Word sia un po ‘complicato o impossibile. Il codice sopra ha dimostrato con quanta facilità si possono copiare e incollare dati in file word senza problemi da più fogli Excel a file word doc.
Se i nostri blog ti sono piaciuti, condividilo con i tuoi amici su Facebook. E anche tu puoi seguirci su Twitter e Facebook.
_ Ci piacerebbe sentire la tua opinione, facci sapere come possiamo migliorare, integrare o innovare il nostro lavoro e renderlo migliore per te. Scrivici a [email protected]_