『エクセルvbaからワードの操作』(とまと) vbaを初めてまだまだ少しの初心者です。 エクセルvbaからワードを開き、ワード文書内のInlineShapesの2番目のものをコピーして、 エクセルのシートにペーストしたいです。 エクセルvbaからワードを開くところはできているのですが、 InlineShapesを指定してコピーするところで困っています。 ワードvbaで、InlineShapesの2番目のものをコピーする時は以下のコードから操作できたのですが、 これをエクセルvba上で行うにはどのようにアレンジしたらよろしいでしょうか? Dim doc As Document Set doc = ActiveDocument doc.InlineShapes(2).Select Selection.Copy 低レベルな質問でしたら申し訳ございません。 ご教示お願い致します。 < 使用 Excel:Excel2007、使用 OS:unknown > ---- Word の処理に依存した部分は内容が不明ですが、前段だけ。 http://www.simple-sys.com/blog/2008/03/29/172/ にあるように、参照設定で Word をチェックします。 EXCEL でのコードは Sub Sample() Dim wd As New Word.Application wd.Visible = True Dim doc As Document Set doc = wd.Documents.Open("D:\sample.docx") : End Sub EXCEL でファイルやシートにまたがるときはファイルやシートを指定するように アプリケーションをまたがるときはアプリケーションを指定して処理します。 (Mook) 2014/03/14(金) 10:57 ---- ご回答ありがとうございます。 説明不足で申し訳ありませんでした。 ワードを開くところは以下のコードを作りました。 'フォルダの中のファイルを読み込む Const FolderPath = "フォルダ名" Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") Set objWord = CreateObject("Word.Application") objWord.Visible = True Dim i As Integer i = 1 For Each myFile In fso.GetFolder(FolderPath).Files If fso.GetExtensionName(myFile.Path) = "RTF" Then Set objDoc = objWord.Documents.Open(myFile.Path) ワードで開きたいファイルはRTFファイルです。 その後は objWord.InlineShapes(2).Select objWord.Selection.Copy Sheets("Sheet1").Select Cells(A,1).PasteSpecial Paste:=xlPasteValues objDoc.Close End If i = i + 1 Next としたのですが、「objWord.InlineShapes(2).Select」のコードがうまくいきませんでした。 よろしくお願い致します。 (とまと) 2014/03/14(金) 11:07 ---- 解決いたしました。 ありがとうございました。 (とまと) 2014/03/14(金) 12:33