_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

img1

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

img2

  • 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

image 1.1

===

Per testare il codice, inseriamo 2 fogli e aggiungiamo numeri casuali. Di seguito è riportata l’istantanea di entrambi i fogli di lavoro:

1 ° foglio: –

image 2

2 ° foglio: –

image 3

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

image 1

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.

image 48

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]_