Jeśli musisz skopiować i wkleić dane z wielu arkuszy programu Excel do MS Word, powinieneś przeczytać ten artykuł. W programie Excel nie ma takiej funkcji, która pozwoliłaby na konwersję danych ze skoroszytu programu Excel na plik tekstowy. Aplikacja Word nie może bezpośrednio otwierać plików Excela. Jednak dane programu Excel można skopiować i wkleić do programu Word, a następnie zapisać jako dokument tekstowy.
Wszyscy ręcznie przenosimy dane z programu Excel do słowa, co czasami staje się nużące, jeśli chodzi o wykonywanie tych samych czynności zbyt wiele razy w ciągu dnia; aby uniknąć ręcznych czynności, napiszemy kod VBA, aby wykonać wszystkie kroki.
W tym artykule skupimy się na przenoszeniu danych z programu Excel do dokumentu Word. Całą procedurę zautomatyzujemy za pomocą kodu VBA. Dzięki kodowi makr możesz po prostu skopiować dane do jednego arkusza roboczego za jednym razem, a następnie aplikacja tekstowa zostanie uruchomiona automatycznie, a kod VBA użyje polecenia wklejania, aby wstawić dane do pliku doc.
Aby uzyskać kod; musimy wykonać poniższe kroki, aby uruchomić edytor VB:
- Kliknij kartę Deweloper
- Z grupy Kod wybierz Visual Basic
- Jest ważny krok, którego nie możesz przegapić
- Kliknij Narzędzia, aby wybrać Referencje
- Przewiń w dół, aż znajdziesz „Bibliotekę obiektów Microsoft Word 15.0”
- Upewnij się, że zaznaczyłeś pole; patrz poniżej obrazu!
- Skopiuj poniższy kod w standardowym module
Sub CopyWorksheetsToWord() Dim wdApp As Word.Application, wdDoc As Word.Document, ws As Worksheet Application.ScreenUpdating = False Application.StatusBar = "Tworzenie nowego dokumentu…" Ustaw wdApp = Nowy Word.Application Ustaw wdDoc = wdApp.Documents.Add For Each ws In ActiveWorkbook.Worksheets Application.StatusBar = "Kopiowanie danych z " & 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 nie 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 = Nic Application.StatusBar = "Czyszczenie… " Z wdApp.ActiveWindow If .View.SplitSpecial Then = wdPaneNone ActivePane.View.Type = wdNormalView Inny .View.Type = wdNormalView End If End With Set wdDoc = Nic wdApp.Visible = True Ustaw wdApp = Nic Application.StatusBar = False End Sub
Aby przetestować kod, wstawmy 2 arkusze i dodajmy losowe liczby. Poniżej znajduje się migawka obu arkuszy:
Pierwszy arkusz:-
Drugi arkusz:-
- Po skonfigurowaniu danych w arkuszach roboczych; możemy uruchomić makro
- Aplikacja Word zostanie natychmiast uruchomiona, a dane ze wszystkich arkuszy roboczych zostaną skopiowane do programu Word; patrz poniżej migawka
Jeśli uważasz, że kopiowanie danych to jedno zadanie, ale między danymi każdego arkusza powinien być podział strony, aby każdy mógł łatwo rozróżnić dane z każdego arkusza.
Powyższe dane zostaną skopiowane z jednego arkusza, a następnie kod VBA zapewni dodanie podziału strony między stronami.
Wniosek: W ten sposób możemy pomóc wielu użytkownikom pakietu Microsoft Office, którzy uważają, że konwersja danych z pliku Excel na słowo jest nieco skomplikowana lub niemożliwa. Powyższy kod pokazał, jak łatwo można kopiować i wklejać dane do pliku Word bez żadnych problemów z wielu arkuszy Excela do pliku Word Doc.
Jeśli podobały Ci się nasze blogi, podziel się nimi ze znajomymi na Facebooku. A także możesz śledzić nas na Twitterze i Facebooku.
Chcielibyśmy usłyszeć od Ciebie, daj nam znać, jak możemy ulepszyć, uzupełnić lub unowocześnić naszą pracę i uczynić ją lepszą dla Ciebie. Napisz do nas na stronie e-mail