Calc で LibreOffice Basic を使用して範囲に名前を付ける際の問題

Calc で LibreOffice Basic を使用して範囲に名前を付ける際の問題

私は、範囲に名前を付けるために次のコードを使用する Calc アプリケーションを開発しています。

Dim Rname As String
Dim s As String
Dim Doc As Object
Dim Ranges As Object
Dim Sheet As Object
Ranges = Doc.NamedRanges
Sheet = Doc.Sheets.getByName("Sheet1")
Rname = "TestRange"
s = "$Sheet1.$C$11"
Ranges.addNewByName(Rname, s, Sheet.getCellByPosition(2, 10).CellAddress, 0)

問題は、Ubuntu 22.10 と LibreOffice 7.4.4.2 を実行している 1 台のコンピューターではコードが正常に動作するが、Ubuntu 22.04 LTS と LibreOffice 7.3.7.2 を実行している別のコンピューター (アプリケーションを実行するはずのコンピューター) では動作しないことです。2 台目のコンピューターでは、ランタイム例外「Type: com.sun.star.uno.RuntimeException Message: ./sc/source/ui/unoobj/nameuno.cxx:518」が発生します。

この種の障害は、アプリケーションを他のコンピュータに移植できるかどうかという疑問を生じさせるため、心配です。どなたか助けていただければ幸いです。ありがとうございます。

答え1

名前付き範囲が以前に作成されていたため、ランタイム エラーが発生しています。コードの最初の実行を逃しました。名前が重複していない場合は機能します。

関連情報