Als u gegevens van meerdere Excel-werkbladen in MS Word moet kopiëren en plakken, moet u dit artikel lezen. In Excel is er geen dergelijke functie waarmee u de gegevens van een Excel-werkmap naar een Word-bestand kunt converteren. Word-toepassing kan Excel-bestanden niet rechtstreeks openen. Excel-gegevens kunnen echter in Word worden gekopieerd en geplakt en vervolgens worden opgeslagen als Word-document.
We zetten allemaal handmatig gegevens over van Excel naar Word, wat soms vervelend wordt als het gaat om het te vaak uitvoeren van dezelfde stappen op een dag; om de handmatige stappen te vermijden, zullen we VBA-code schrijven om alle stappen uit te voeren.
In dit artikel zullen we ons concentreren op het verplaatsen van gegevens van Excel naar Word-document. We zullen de hele procedure automatiseren via VBA-code. Met macrocode kunt u eenvoudig de gegevens in één werkblad tegelijk kopiëren en dan wordt de woordtoepassing automatisch gestart en VBA-code zal de plakopdracht gebruiken om de gegevens in het doc-bestand in te voegen.
Om de code te krijgen; we moeten de onderstaande stappen volgen om de VB-editor te starten:
- Klik op het tabblad Ontwikkelaar
- Selecteer in de codegroep Visual Basic
- Er is een belangrijke stap die je niet mag missen
- Klik op Tools om Referenties te selecteren
- Scroll naar beneden tot je "Microsoft Word 15.0 Object Library" vindt
- Zorg ervoor dat u het vakje aanvinkt; zie onderstaande afbeelding:
- Kopieer onderstaande code in de standaard module
Sub CopyWorksheetsToWord() Dim wdApp As Word.Application, wdDoc As Word.Document, ws As Worksheet Application.ScreenUpdating = False Application.StatusBar = "Nieuw document maken… " Stel wdApp = Nieuw Word.Applicatie in Stel wdDoc = wdApp.Documents.Add in For Each ws In ActiveWorkbook.Worksheets Application.StatusBar = "Gegevens kopiëren van " & 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 = "Opschonen… " With wdApp.ActiveWindow If Then .View.SplitSpecial = wdPaneNone ActivePane.View.Type = wdNormalView Anders .View.Type = wdNormalView End If End With Set wdDoc = Niets wdApp.Visible = True Set wdApp = Niets Application.StatusBar = False End Sub
Om de code te testen, laten we 2 vellen invoegen en willekeurige getallen toevoegen. Hieronder volgt de momentopname van beide werkbladen:
1e blad:-
2e blad:-
- Na het instellen van de gegevens in werkbladen; we kunnen de macro uitvoeren
- Word-toepassing wordt onmiddellijk gestart en gegevens worden van alle werkbladen naar Word gekopieerd; zie onderstaande momentopname:
Als u denkt dat het kopiëren van de gegevens één taak is, maar dat er een pagina-einde moet zijn tussen de gegevens van elk werkblad, zodat iedereen gemakkelijk het verschil kan maken tussen de gegevens van elk werkblad.
De bovenstaande gegevens worden van één blad gekopieerd en vervolgens zorgt VBA-code ervoor dat een pagina-einde tussen de pagina's wordt toegevoegd.
Conclusie: Op deze manier kunnen we veel Microsoft Office-gebruikers helpen die denken dat het converteren van gegevens van Excel-bestand naar Word een beetje ingewikkeld of onmogelijk is. De bovenstaande code heeft aangetoond hoe gemakkelijk men gegevens in een Word-bestand kan kopiëren en plakken zonder gedoe van meerdere Excel-bladen naar Word-doc-bestand.
Als je onze blogs leuk vond, deel deze dan met je vrienden op Facebook. En je kunt ons ook volgen op Twitter en Facebook.
We horen graag van je, laat ons weten hoe we ons werk kunnen verbeteren, aanvullen of vernieuwen en het voor jou beter kunnen maken. Schrijf ons op de e-mailsite