LibreOffice Calc - 如何使用终端命令重新计算?

LibreOffice Calc - 如何使用终端命令重新计算?

https://help.libreoffice.org/Calc/Recalculate 标题说明了一切。我有一个包含大量 RANDBETWEEN() 函数的 Excel 文件。我想知道我是否可以在不实际打开 Libreoffice 的情况下使用终端命令重新生成数字?

提前谢谢大家。

答案1

RANDBETWEEN将在文件打开时自动重新计算。因此,在“我的宏”中创建以下宏,只需保存然后退出即可。

Sub Recalculate()
   'ThisComponent.calculateAll()  ' Not needed
   ThisComponent.store()
   ThisComponent.close(True)
   dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
   dispatcher.executeDispatch(StarDesktop, ".uno:Quit", "", 0, Array())
End Sub

然后按照此处的说明从命令行运行宏:https://unix.stackexchange.com/questions/7295/how-to-invoke-an-openoffice-macro-from-the-linux-command-line

但是,尽管有该--invisible标志,LibreOffice 窗口仍会出现。要使其不可见,请将文件名作为参数传递给宏,然后调用loadComponentFromUrlhttps://superuser.com/questions/1135850/how-do-i-run-a-libreoffice-macro-from-the-command-line-without-the-gui

相关内容