0

わかりましたので、MS Word ドキュメントの VBA を使用して埋め込まれた Excel ワークシートを正常に変更できました...そのドキュメントに添付されたコードから。

今、MS Access から MS Word 文書に埋め込まれた同じ Excel ワークシートを変更しようとしています。ドキュメントへの接続に成功し、他の項目を変更できました。画像コンテンツ コントロールの画像、ヘッダー内のフィールドのテキストなど。

実際のドキュメントと同じコードを使用しています。これがWord内からの方法です(うまくいきました):

Dim oleObj as OLEFormat

Set oleObj = Me.Shapes("tblEBACostHistory").OLEFormat
oleObj.Activate
oleObj.Object.Sheets(1).Range("A3") = "test"
SendKeys "{ESC}"
Set oleObj = nothing

アクセス内からの私のコードは次のとおりです。

Dim oleObj as OLEFormat

Set oleObj = wdDoc.Shapes("tblEBACostHistory").OLEFormat

この最後の行が失敗し、「タイプの不一致」エラーが発生します。ドキュメントに他の変更を加えることができたので、「wdDoc」は良いです。

考え?

4

1 に答える 1

2

わかりました、私は自分の質問に答えました。「タイプの不一致」エラーは、ある種の参照ライブラリの問題であると私に叫んでいました。Microsoft Word 14.0 Object Library を含めていたので、なぜ失敗したのかわかりませんでした。それからそれは私に来ました:

だから私は変更しました:

Dim oleObj as OLEFormat

に:

Dim oleObj as Word.OLEFormat

そしてそれは働いた!

于 2013-05-02T15:02:38.073 に答える