Office.Interopを使用して、ブックマークが属するテーブルセルを確認する方法

StackOverflow https://stackoverflow.com/questions/1606543

質問

C#でアプリケーションを作成しています。そのアプリケーションは、テンプレートからMS Word文書を作成する必要があります。そのテンプレートには、テーブルと、テーブルのセルの1つに格納されているブックマークが含まれています。そのセルを参照する必要があります。つまり、行と列を決定する必要があります。

役に立ちましたか?

解決

まあ、これは非常に厄介なことが判明しました。しかし、私はちょっとしたトリックを思いつきました: ブックマークは表のセルとは一切関係ありません。ブックマークからセルを決定する方法はありません。ただし、ブックマークされた位置に値を設定し、その値を探してテーブルセルを反復処理することは可能です。値が見つかったら、セルを参照し、必要に応じてその値を削除できます。そのため、(temp)値はブックマークとセルの間のメディエーターとして機能します。きちんとした!

他のヒント

私の最初の投稿(優しくしてください)。とにかく、これはどうですか:

// at this point objWordApp should be an instance of word with the document open<br>
object objBookmarkName = "mybookmark";<br>
object objGotoBookmark = Word.WdGoToItem.wdGoToBookmark;<br>
Word.Table objTable;<br>
Word.Range objRange;<br>
objTable = objWordApp.ActiveDocument.GoTo(ref objGotoBookmark, ref objMissing, ref objMissing, ref objBookmarkName).Tables.Item(1);<br>
objWordApp.Selection.GoTo(ref objGotoBookmark, ref objMissing, ref objMissing, ref objBookmarkName);

int intRow = objRange.Cells.Item(1).RowIndex;<br>int intCol = objRange.Cells.Item(1).ColumnIndex;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top