Word文書に埋め込まれたExcel文書を読んでみました。私はこのブログ記事で指定されたコードに従いました:
http://vbadud.blogspot.com/2010/08/how-to-read-excel-sheet-embedded-in.html
Dim oWB As Excel.Workbook
Dim oIShape As InlineShape
For Each oIShape In ActiveDocument.InlineShapes
If InStr(1, oIShape.OLEFormat.ProgID, "Excel") Then
oIShape.OLEFormat.Activate
Set oWB = oIShape.OLEFormat.Object
oWB.Sheets(1).Range("A1").Value = "ProdID"
End If
Next oIShape
正常に動作しますが、Activate行を使用すると、読み取った各Excelドキュメントでドキュメントがちらつきます。oIShape.OLEFormat.Activateコードを削除しようとしましたが、次の行で「ランタイムエラー '430」がスローされます(クラスは自動化をサポートしていないか、expectをサポートしていません)。
問題は、Activateメソッドを呼び出さずに埋め込みExcelにアクセスする他の方法はありますか?