如何使用 LibreOffice Java API 获取公式的结果?

问题描述

假设以下公式位于 Sheet1 的 A1 处:

=IF($'Sheet 2'.A1>0,"Some Text","")

这不起作用:

Object value = xCell.getValue();

我期望值​​是“一些文本”。相反,我得到“0”。

如何根据另一个工作表中的条件获取实际的单元格字符串值?

解决方法

XCell getValue 返回一个浮点数。需要的是获取单元格的内容值(不是存储值,即公式)。

XTextRange text = UnoRuntime.queryInterface( XTextRange.class,xCell );
return text.getString();