Word文書中の表をコピーしてExcelシートに貼り付けるには?

Question 70.3 Previous Next
Wordの文章を使ってアンケートシートを作成しています。
関係部所から多くのWordファイルが送られ、そのアンケート内容の全項目をEXCELに転記して、アンケート台帳として管理しています。
EXCELへの転記は、Wordの表の中に入力された内容をコピー、EXCELのシートにペーストしていますが、Wordファイルが増えてきて作業が追いつかない状況です。
EXCELのVBAでWordの文章を開くことはできるのですが、Wordの文字(表の中の複数行)を、EXCELのセルへコピーすることは可能なのでしょうか。 Win2000、Excel2000を使っています。
Answer   Copyright (C) 2004.12.13 永井善王
可能と思いますよ。ExcelとWordのバージョンによるかも知れませんが。
あなたがお使いの「Wordファイル」のレイアウトがわかりませんから、下図を例にして考えてみましょうか。Word文書中の表をコピーして、Excelシートへ貼り付けてみます。
Word文書
処理の流れとコード
1. Wordを起動する
Set ワード = CreateObject("Word.Application")

2. ファイル名を指定する
ファイル名 = "C:\Word連携\報告書.doc"

3. 指定された文書を開く
Set ワード文書 = ワード.Documents _
.Open(ファイル名)
(以上は、あなたのコードと異なる場合があります)

貼付後のシート 4. 開いた文書の1番目の表をコピーする
ワード文書.tables(1).Range.Copy

5. Excelシートの貼り付けセルを指定する
貼付セル = "A1"

6. 指定されたセルを選択する
Range(貼付セル).Select

7. 貼り付ける
ActiveSheet.Paste

上記のコードに関連するより詳しい情報は、
ここをクリックしてサンプルをダウンロード してご覧ください。(YNxv9d367_Word.lzh、11KB、マクロブックとWord文書の圧縮ファイル、「Cドライブのルート」にそのまま解凍)
なお、ここでは取り上げませんが、ExcelマクロでWordを操作するコードは、幾通りかありますのでご留意ください。
関連ページ
Wordを起動して文書を開くには?
       ・ Wordは起動できるが文書を開けないが?
       ・ Word文書を開くコードでエラーが出てしまうが?
       ・ 「Wordを起動して文書を開く」マクロを2回連続実行するとエラーが出るが?

 

Excel VBA Macro