在 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 的计算机上运行良好,但在另一台运行 Ubuntu 22.04 LTS 和 LibreOffice 7.3.7.2 的计算机上(应该运行该应用程序的计算机)运行失败。在第二台计算机上,我收到运行时异常“类型:com.sun.star.uno.RuntimeException 消息:./sc/source/ui/unoobj/nameuno.cxx:518。”

这种故障让我很担心,因为它引发了人们对该应用程序在其他计算机上的可移植性的质疑。任何帮助都将不胜感激。谢谢

答案1

运行时错误是由于之前创建了命名范围而产生的。我错过了代码的第一次运行。如果名称不重复,它就可以正常工作。

相关内容