2017-06-28 1 views
-1

いくつかのExcelファイルにリンクされている構成ツールを作成しようとしています。 これらはすべて「オプション番号」によってリンクされています。 「option-number」リンクを使用して、MS Word文書全体の一部をExcelにインポートする方法はありますか?vba-commandbutton経由でMS Wordからテキストをインポートする方法

+0

はいこれが可能です。あなたはこれまでに何を試していますか、そしてどこで立ち往生しましたか? [How to Ask](https://stackoverflow.com/help/how-to-ask) –

+0

@RikSportelを読んでください。私はこれを学んでいます。私はオルタナティヴのためのセッチングまで来ました。私はこのサイトで同様のことについていくつかの質問を見つけましたが、私も質問をしたかったのです。今私が気づいたテキストがテーブル形式であったので、それはもっと簡単になるはずです。それでもひどく尋ねられましたが、あなたの応答に感謝します。 –

答えて

0

さてさて、あなたの質問は任意のコードを保持していないと本当に私はちょうどエクセルからワード文書内のテーブルにアクセスする方法についていくつかの一般的な指針を与えるでしょう、私たちにあなたが後にしているアプローチについて多くを教えてくれないので、マクロ。

まず、あなたはMicrosoft Word #.# Object Libraryへの参照を追加する必要があります。これを行うには、VBE(alt + F11)を開き、toolsReferences...をクリックし、このライブラリのチェックボックスをオンにします。上記の#.#がバージョン番号です。たとえば、単語2016はMicrosoft Word 16.0 Object Libraryとなります。

これでExcel VBEのWordオブジェクトにアクセスできます。

Sub Test() 
Dim wApp As Word.Application 
Dim wDoc As Word.Document 
Dim wTable As Word.Table 
Dim r As Word.Row 
Dim c As Word.Cell 

Set wApp = New Word.Application 'Get a word application object, so you can open and manipulate documents from your Excel macro. 
Set wDoc = wApp.Documents.Open("C:\temp\temp.docx") 'Open your document. 

Set wTable = wDoc.Tables(1) 'To access the first table in the document 

For Each r In wTable.Rows 'Loop over Word table rows 
    For Each c In r.Cells 'Loop over Word table cells 
     'Do stuff with the table: 
     MsgBox c.Range.Text 
     ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = c.Range.Text 
    Next c 
Next r 

'and clean up after yourself: 
Set wTable = Nothing 

wDoc.Close SaveChanges:=False 
wApp.Quit 

Set wDoc = Nothing 
Set wApp = Nothing 
End Sub 

幸運: あなたはこのような何かを行うことができます。

+0

あなたはこのラインを少し説明することができます:あなたはエクセルのマクロ –

+0

'設定しwApp =新Word.Application'から文書を開き、操作することができるように 設定wApp =新Word.Applicationを「/は、Word作成、ワードアプリケーションオブジェクトを開き取得インスタンス。デフォルトでは表示されません。 'wApp.Visible = True'を次の行に追加すると、その行の内容が表示されます。後の部分は単なるコメントです。 私はコードがExcelマクロの一部であると仮定しています。そのため、Word.Applicationオブジェクトへの参照が必要です - Excel自体はワードファイルを読みません。 –

+0

これで基本的にWordからExcelにテーブルをコピーするマクロを作成し、マクロをVBAにリンクしていますか?どのテーブルをVBA経由でコピーすべきかを判断することは可能ですか、テーブルごとに1つのmakroを作成する必要がありますか?私が使用しているワークブックには、各プロジェクトごとに異なる「オプション番号」のアクティブな表があります。同じ "オプション番号"は、私がコピーしているWordファイルにあります。 –

関連する問題