Word 文書に埋め込まれた Excel テーブルをプログラムで変更しようとしています。これを行うために、docx ファイルと埋め込まれた Excel ファイルを変更しました。
主なドキュメントの重要な部分は次のとおりです。
<w:object w:dxaOrig="8406" w:dyaOrig="2056">
<v:shape id="_x0000_i1028" type="#_x0000_t75"
style="width:390.75pt;height:95.25pt" o:ole=""><v:imagedata r:id="rId14"
o:title=""/>
</v:shape>
<o:OLEObject Type="Embed" ProgID="Excel.Sheet.12" ShapeID="_x0000_i1028"
DrawAspect="Content" ObjectID="_1349794876" r:id="rId15"
UpdateMode="Always"/>
</w:object>
Word ドキュメントは、OLEObject を使用して、埋め込まれた Excel ドキュメントにリンクします。表示目的で、.wmf ファイルが使用されます (v:shape
要素を使用)。このプレビューより古い Excel ドキュメントを修正しました。
これにより、ドキュメントで奇妙な動作が発生します。
- 埋め込み (Excel) テーブルのプレビューに間違ったデータが表示される
- 埋め込まれたテーブルをダブルクリックすると、埋め込まれた Excel でテーブルが開き、正しいデータが表示されます
- 埋め込みエディターを閉じると、新しいプレビューの生成がトリガーされ、正しいデータが表示されます
もちろん、ドキュメントを開いたときにテーブルに正しいテーブルが表示されるようにします。Word で画像を破棄してプレビューを再描画するにはどうすればよいですか?
私にとって理想的な解決策は、docx の内容を変更するだけでプレビューの再生成をトリガーすることですが、小さなスクリプトを使用した解決策も役立ちます。