В тази статия имаме удоволствието да ви предложим начина за конвертиране на работен лист на Excel в собствена таблица на Word чрез VBA.
Office файловете приемат различни формати. От време на време ще се сблъскате с необходимостта от конвертиране на файлови формати от един в друг. Например, конвертирането между Excel файл и Word документ е едно от най-необходимите. Всъщност, обсъждахме тази тема в една от предишните ни статии: 5 лесни начина за прехвърляне на таблични данни на Excel във вашата дума
Днес има много по-бърз макро начин за извличане на работна книга на Excel в документ на Word. И цялото съдържание в работния лист ще бъде преобразувано в собствена таблица на Word.
Инсталирайте и стартирайте Word Macro
Ще изпълним макроса в Word. Тъй като част от кодовете в макроса включват задействане на обект в Excel, трябва да добавите препратка към библиотека с обекти.
- Първо и най-важно, отворете нов празен документ на Word.
- И натиснете „Alt+ F11“, за да отворите VBA редактор в Word.
- След това щракнете върху „Нормално“ в лявата колона.
- След това кликнете върху „Вмъкване“ и изберете „Модул“.
- Сега имате нов модул. Кликнете два пъти върху него, за да отворите.
- След това щракнете върху раздела „Инструменти“ в лентата с менюта.
- Изберете „Препратки“ от падащото меню.
- В прозореца „References-Normal“ поставете отметка в квадратчето „Microsoft Excel 14.0 Object Library“ и щракнете върху „OK“.
- След това копирайте и поставете следните кодове в новия модул:
Sub ExtractWorksheetsToWordDocument()
Dim objExcel As Excel.Application
Dim objWorkbook As Excel.Workbook
Dim objWorksheet As Excel.Worksheet
Dim objTable As Table
Dim dlgFile As FileDialog
Dim strFileName As String
Application.ScreenUpdating = False
' Select an Excel file from Browse window.
Set dlgFile = Application.FileDialog(msoFileDialogFilePicker)
With dlgFile
If .Show = -1 Then
strFileName = .SelectedItems(1)
Else
MsgBox "No file is selected! Please select the target file."
Exit Sub
End If
End With
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open(strFileName)
objExcel.Visible = False
' Step through each worksheet in the Excel file and extract data to each _
individual section in Word document.
For Each objWorksheet In ActiveWorkbook.Worksheets
objWorksheet.UsedRange.Copy
ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range.Paste
ActiveDocument.Range.InsertAfter objWorksheet.Name
If Not objWorksheet.Name = Worksheets(Worksheets.Count).Name Then
With ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range
.Collapse Direction:=wdCollapseEnd
.InsertBreak Type:=wdSectionBreakNextPage
End With
End If
Next objWorksheet
For Each objTable In ActiveDocument.Tables
objTable.Borders.Enable = True
Next objTable
' Close the Excel application using the Quit method.
objExcel.Application.Quit
' Release the object variables.
Set objWorksheet = Nothing
Set objWorkbook = Nothing
Set objExcel = Nothing
Application.ScreenUpdating = True
End Sub
- Щракнете върху „Run“ или натиснете „F5“.
- Сега има прозорец „Преглед“. Просто изберете Excel файл и щракнете върху „OK“.
Ето резултата:
Уверете се, че вашите документи все още работят
Вероятно има стотици документи, съхранени на вашия компютър. С течение на времето е лесно да забравите някои от тях. И когато си спомните, че сте ги проверили в даден момент, ги намирате само недостъпни. След това трябва незабавно да прибегнете до инструмент за ремонт док.
Въведение на автора:
Вера Чен е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително поправете xlsx и pdf ремонт на софтуерни продукти. За повече информация посетете WWW.datanumen.com




