如何通过 VBA 将 Excel 工作表转换为本机 Word 表

立即分享:

在本文中,我们很高兴为您提供通过 VBA 将 Excel 工作表转换为本机 Word 表格的方法。

办公文件格式多种多样。您有时会遇到需要转换文件格式的情况。例如,Excel 文件和 Word 文档之间的转换就是最常见的需求之一。实际上,我们曾在之前的文章中讨论过这个话题: 将 Excel 表格数据传输到 Word 的 5 种简单方法

今天,有一种更快的宏方法可以将 Excel 工作簿提取到 Word 文档。 并且工作表中的所有内容都将转换为原生 Word 表格。将 Excel 工作表转换为本机 Word 表

安装并运行 Word 宏

我们将在 Word 中运行宏。由于宏中的部分代码涉及触发 Excel 对象,因此您需要添加对象库引用。

  1. 首先,打开一个新的空白 Word 文档。
  2. 然后按“Alt+F11”在Word中打开VBA编辑器。
  3. 然后单击左侧栏中的“正常”。
  4. 接下来单击“插入”并选择“模块”。点击“普通”->点击“插入”->点击“模块”
  5. 现在你有了一个新模块。 双击它打开。
  6. 然后单击菜单栏上的“工具”选项卡。
  7. 在下拉菜单中选择“参考”。单击“工具”->选择“参考”
  8. 在“引用-普通”窗口中,选中“Microsoft Excel 14.0 对象库”复选框,然后单击“确定”。选中“Microsoft Excel 14.0 对象库”复选框->单击“确定”
  9. 接下来将以下代码复制并粘贴到新模块中:
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
  1. 单击“运行”或按“F5”。粘贴代码->点击“运行”
  2. 现在有“浏览”窗口。 只需选择一个 Excel 文件,然后单击“确定”。

结果如下:将 Excel 工作表转换为本机 Word 表格的效果

确保您的文档仍然有效

您的计算机上可能存储了数百个文档。 随着时间的流逝,很容易忘记其中的一些。 当您记得在某个时候检查它们时,您只会发现它们无法访问。 那么你应该立即求助于一个工具来 修复文档.

作者简介:

Vera Chen 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复 xlsx 和 pdf 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。