ブックマークが表のセル内に配置されているかどうかを確認する方法はありますか?もしそうなら、どのようにしてセルのインデックス(行と列)を得ることができますか?ブックマークがセル内に置かれたときを確認するにはどうすればいいですか?
XTextViewCursor
のようなものを使用することについて考えましたが、カーソル位置を比較するためにセルカーソルを取得する方法はわかりません。
ブックマークが表のセル内に配置されているかどうかを確認する方法はありますか?もしそうなら、どのようにしてセルのインデックス(行と列)を得ることができますか?ブックマークがセル内に置かれたときを確認するにはどうすればいいですか?
XTextViewCursor
のようなものを使用することについて考えましたが、カーソル位置を比較するためにセルカーソルを取得する方法はわかりません。
どうやらブックマークアンカーはTextRangeインターフェイスのように動作し(非Javaソリューションも許容、私はアイデアを取得したいです)。 Andrew Pitonyakのマクロ文書の7.1.2 Can I check the current selection for a TextTable or Cell
を参照してください。
次のpythonの例では、アンカーが表のセルにあるかどうかを確認しています。そうであれば、それは行と列を決定することができるセル名を取得します。
私のテストでは、セル名はB2
でした。単純な表の場合、B2
は単に2番目の行と2番目の列を意味します。複数の列にまたがる行、または複数の行にまたがる列を持つ表では、より複雑な場合があります。あなたはまた、props
から"TextTable"
を抽出してcell
のプロパティからを取得することができ
XTextRange bookmark = getBookmarkByName(bookmarkName);
XPropertySet props = UnoRuntime.queryInterface(XPropertySet.class, bookmark);
Object maybeCell = props.getValue("Cell");
XCell cell = UnoRuntime.queryInterface(XCell.class, maybeCell);
:
@のJIMKの回答に基づいてJavaソリューションは、あります。
ありがとうございます! – soon