Copia le informazioni del foglio di lavoro in Word utilizzando VBA in Microsoft Excel

Anonim

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 una funzionalità del genere che potrebbe consentire di convertire i dati dalla cartella di lavoro di Excel in un file di Word. L'applicazione Word non può aprire direttamente i file excel. Tuttavia, i dati Excel possono essere copiati e incollati in Word e quindi salvati come documento Word.
Tutti trasferiamo manualmente i dati da Excel a Word, il che a volte diventa noioso quando si tratta di eseguire gli stessi passaggi troppe volte al 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. Automatizziamo 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, seleziona Visual Basic

  • C'è un passaggio importante da non perdere
  • Fare clic su Strumenti per selezionare Riferimenti
  • Scorri verso il basso fino a trovare "Microsoft Word 15.0 Object Library"
  • Assicurati di selezionare la casella; fare riferimento all'immagine sotto

  • Copia il codice sottostante nel modulo standard
Sub CopyWorksheetsToWord() Dim wdApp As Word.Application, wdDoc As Word.Document, ws As Worksheet Application.ScreenUpdating = False Application.StatusBar = "Creazione nuovo documento…" Imposta wdApp = New Word.Application Imposta wdDoc = wdApp.Documents.Add For Each ws In ActiveWorkbook.Worksheets Application.StatusBar = "Copia dati da " & 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 = .PaneNone 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 e i dati verranno copiati da tutti i fogli di lavoro in Word; fare riferimento all'istantanea di seguito

Se pensi che copiare i dati sia un'attività, ma dovrebbe esserci un'interruzione di pagina tra i dati di ciascun 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 i dati in un file word senza problemi da più fogli excel a file word doc.

Se ti è piaciuto il nostro blog, condividilo con i tuoi amici su Facebook. E puoi anche seguirci su Twitter e Facebook.

Ci piacerebbe avere tue notizie, facci sapere come possiamo migliorare, completare o innovare il nostro lavoro e renderlo migliore per te. Scrivici al sito di posta elettronica