VBAを介してExcelワークシートをネイティブワードテーブルに変換する方法

今すぐ共有:

この記事では、VBAを介してExcelワークシートをネイティブのWordテーブルに変換する方法を提供できることをうれしく思います。

オフィスファイルにはさまざまな形式があります。時折、あるファイル形式から別のファイル形式への変換が必要になることがあります。たとえば、ExcelファイルとWord文書間の変換は最もよく求められる変換の1つです。実は、このトピックについては以前の記事で取り上げています。 Excelの表形式データをWordに転送する5つの簡単な方法

今日、ExcelブックをWord文書に抽出するためのはるかに高速なマクロ方法があります。 また、ワークシートのすべてのコンテンツは、ネイティブのWordテーブルに変換されます。Excelワークシートをネイティブワードテーブルに変換する

Wordマクロをインストールして実行する

Wordでマクロを実行します。マクロのコードの一部はExcelオブジェクトを操作するため、オブジェクトライブラリへの参照を追加する必要があります。

  1. まず最初に、新しい空白のWord文書を開いてください。
  2. そして、「Alt + F11」を押して、WordでVBAエディターを開きます。
  3. 次に、左側の列の「通常」をクリックします。
  4. 次に「挿入」をクリックし、「モジュール」を選択します。「通常」をクリック->「挿入」をクリック->「モジュール」をクリック
  5. これで、新しいモジュールができました。 それをダブルクリックして開きます。
  6. 次に、メニューバーの[ツール]タブをクリックします。
  7. ドロップダウンメニューで「参照」を選択します。「ツール」->「参照」を選択をクリックします
  8. 「参照設定 - 標準」ウィンドウで、「Microsoft Excel 14.0 オブジェクト ライブラリ」のチェックボックスをオンにして、「OK」をクリックします。「Microsoft Excel 14.0 オブジェクトライブラリ」ボックスにチェックを入れ、「OK」をクリックします。
  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ファイルを選択して「OK」をクリックするだけです。

結果は次のとおりです。Excelワークシートをネイティブワードテーブルに変換する効果

ドキュメントが引き続き機能することを確認する

コンピュータにはおそらく何百ものドキュメントが保存されています。 時間が経つにつれて、それらのいくつかを忘れがちです。 そして、ある時点でそれらをチェックしたことを覚えているとき、あなたはそれらにアクセスできないことに気付くだけです。 次に、すぐにツールに頼る必要があります 修理ドキュメント.

著者紹介:

Vera Chenは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 xlsxを修正 (NAIST) と pdf ソフトウェア製品を修理します。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

今すぐ共有:

コメントは締め切りました。