Zkopírujte informace z listu do Wordu pomocí VBA v Microsoft Excelu

Anonim

Pokud jste povinni kopírovat a vkládat data z více listů Excelu do MS Word, měli byste si přečíst tento článek. V aplikaci Excel neexistuje žádná taková funkce, která by vám umožnila převést data ze sešitu aplikace Excel do souboru aplikace Word. Aplikace Word nemůže přímo otevírat soubory aplikace Excel. Data aplikace Excel však lze zkopírovat a vložit do aplikace Word a poté uložit jako dokument aplikace Word.
Všichni přenášíme data z Excelu do aplikace Word ručně, což někdy bývá únavné, pokud jde o provádění stejných kroků příliš mnohokrát za den; abychom se vyhnuli ručním krokům, napíšeme kód VBA, abychom provedli všechny kroky.

V tomto článku se zaměříme na přesun dat z excelu do wordového dokumentu. Celý postup zautomatizujeme prostřednictvím kódu VBA. S kódem makra můžete jednoduše zkopírovat data do jednoho listu najednou a poté se automaticky spustí aplikace Word a kód VBA použije příkaz paste k vložení dat do souboru doc.

Chcete -li získat kód; pro spuštění VB editoru musíme provést následující kroky:

  • Klikněte na kartu Vývojář
  • Ze skupiny kódů vyberte Visual Basic

  • Je tu důležitý krok, který nesmíte nechat ujít
  • Kliknutím na Nástroje vyberte Reference
  • Přejděte dolů, dokud nenajdete „Objektovou knihovnu Microsoft Word 15.0“
  • Zaškrtněte políčko; viz obrázek níže

  • Zkopírujte níže uvedený kód do standardního modulu
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 Pro každé ws v ActiveWorkbook.Worksheets Application.StatusBar = "Kopírování dat z" & ws.Name & "…" ws.UsedRange.Copy wdDoc.Paragraphs (wdDoc.Paragraphs.Count) .Range.InsertParagraphAfter wdDoc.Paragraphs (wdDoc.Paragraph .Počet Count) .Range .InsertParagraphBefore .Collapse Direction: = wdCollapseEnd .InsertBreak Typ: = wdPageBreak Konec s End If Next ws Set ws = Nothing Application.StatusBar = "Cleaning up …" With wdApp.ActiveWindow If .View.SplitSpecial = wdPaneNone Then. ActivePane.View.Type = wdNormalView Jinak .View.Type = wdNormalView End If End With Set wdDoc = Nothing wdApp.Visible = True Set wdApp = Nothing Application.StatusBar = False End Sub 

K otestování kódu vložíme 2 listy a přidáme náhodná čísla. Následuje snímek obou pracovních listů:

1. list:-

2. list:-

  • Po nastavení dat v pracovních listech; můžeme spustit makro
  • Aplikace Word bude spuštěna okamžitě a data budou zkopírována ze všech listů do aplikace Word; viz snímek níže

Pokud si myslíte, že kopírování dat je jeden úkol, ale mezi daty každého listu by mělo dojít k přerušení stránky, aby kdokoli mohl snadno udělat rozdíl mezi daty z každého listu.

Výše uvedená data budou zkopírována z jednoho listu a poté kód VBA zajistí přidání konce stránky mezi stránky.

Závěr: Tímto způsobem můžeme pomoci mnoha uživatelům sady Microsoft Office, kteří si myslí, že převod dat ze souboru aplikace Excel do aplikace Word je trochu komplikovaný nebo nemožný. Výše uvedený kód ukázal, jak snadno lze kopírovat a vkládat data do souboru Word bez jakéhokoli rozruchu z více listů Excelu do souboru Word Doc.

Pokud se vám naše blogy líbily, sdílejte je se svými přáteli na Facebooku. A také nás můžete sledovat na Twitteru a Facebooku.

Rádi bychom od vás slyšeli, dejte nám vědět, jak můžeme zlepšit, doplnit nebo inovovat naši práci a zlepšit ji pro vás. Napište nám na e -mail