标签: uno

OOo/LibreOffice UNO/Java:如何调用calc函数的电子表格单元格?

在用Java编写的OpenOffice/LibreOffice Calc(Spreadsheet)的UNO扩展中,如何确定UDF(电子表格函数)实现中的调用单元?

备注

  • 在Excel/VBA中,这可以通过 Application.Caller
  • 获取调用者的主要动机是记录/跟踪/调试,即将调用单元视为堆栈跟踪的一部分.
  • 应该可以获得这些信息,因为像"ROW()"和"COLUMN()"这样的内置函数确实具有调用单元的一些知识.
  • 使用这种可能性的应用程序(用于Excel)是Obba,它是电子表格的对象处理程序.这里"控制面板"提供(Java)异常列表,包括调用单元,,单元是堆栈跟踪的一部分.请参阅以下屏幕截图:

Obba控制面板通过调用函数的电子表格单元显示异常

这也是Apache OpenOffice Bugzilla上的功能请求

java uno user-defined-functions openoffice-calc libreoffice

34
推荐指数
1
解决办法
2050
查看次数

如何将xls转换为xlsx

我有一些*.xls(excel 2003)文件,我想将这些文件转换为xlsx(excel 2007).

我使用uno python包,当我保存文件时,我可以设置过滤器名称:MS Excel 97但是没有过滤器名称,如'MS Excel 2007',

请帮帮我,如何设置过滤器名称将xls转换为xlsx?

python excel xls xlsx uno

24
推荐指数
7
解决办法
5万
查看次数

如何在Open Office/Libre Office Draw中调整页面大小以适合绘图内容

我通过Java UNO Runtime Reference api以编程方式在开放式办公室绘制中绘制流程图.在我绘制流程图之后,我想根据绘制的内容所获得的区域调整页面大小.我注意到Microsoft Visio有一个属性在我的"页面设置"中称为"尺寸以适合绘图内容",当我在Visio.Pls中绘制流程图时这样做.建议我如何在Open office/Libre Office Draw中执行相同的操作.

java api openoffice.org uno libreoffice

9
推荐指数
1
解决办法
2110
查看次数

什么是学习OpenOffice.org脚本API的(单一)最佳在线资源

我正在使用OpenOffice.org来满足我不那么频繁的Office套件需求,而且大部分时间它都足以替代它的商业替代品.

虽然它是脚本API但它不足之处.我还没有找到能够理解API的文档,让我可以专注于手头的任务,而不是徘徊如何在打开的文档中选择一段文本.

那么 - 有没有一个很好的文档可以让像我这样的程序员,不完全生活和呼吸UNO对象模型,快速启动和解释几页或更少,如何在OO.o API中找到我需要的东西

api scripting openoffice.org uno

8
推荐指数
1
解决办法
622
查看次数

如何通过 Python + Windows 使用 LibreOffice API (UNO)?

这个问题主要针对 Windows + LibreOffice + Python 3。

我已经安装了 LibreOffice (6.3.4.2),并且 pip install unoconvpip install unotoolspip install uno另一个不相关的库),但在之后我仍然收到此错误import uno

ModuleNotFoundError:没有名为“uno”的模块

更一般地说,作为 UNO 使用的示例,如何使用 LibreOffice UNO 打开 .docx 文档并将其导出为 PDF?

几天来我对此进行了广泛的搜索,但我还没有找到可在 Windows 上运行的可重现的示例代码:

python openoffice.org uno libreoffice

8
推荐指数
1
解决办法
1万
查看次数

使用pyUno for Windows进行OpenOffice.org开发 - 哪个是Python?

在家里,在Linux上,我已经尝试使用pyUNO来使用Python控制OpenOffice.org.我一直在使用Python 2.6.这一切似乎很好用.

现在我想我会在Windows上尝试我的一个脚本(为ODF doc运行图形差异).但是当我试图运行它时,我得到了:

ImportError: No module named uno
Run Code Online (Sandbox Code Playgroud)

根据udk:Python UNO BridgeOpenOffice.org在Windows上运行Python,我必须运行随OpenOffice.org安装的Python解释器.

Q1:OpenOffice.org可以使用Python 2.6吗?

但是,那个解释器是Python 2.3,它有点老了!我的脚本使用2.3(subprocess模块)不支持的功能.

Q2:Windows上的pyUNO编程是否可以使用标准Python发行版的pyUNO附加组件,而不是与OpenOffice.org捆绑在一起的Python?

在我的搜索到目前为止,我还没有找到任何迹象表明有一个pyUNO模块可以安装到标准的Python Windows发行版中...这是一个惊喜,因为在Ubuntu Linux上,UNO支持得很好Python只是通过:

 apt-get install python-uno
Run Code Online (Sandbox Code Playgroud)

另一个问题是:如果我想制作一个同时使用pyUNO和其他第三方库的程序,该怎么办?我无法在Windows上的Python安装中安装pyUNO,所以我不得不以某种方式将我的其他第三方库安装到OpenOffice.org的捆绑Python中?这使得创建更大,更全功能的程序变得困难.

我错过了什么,或者我们现在仍处于这种状况?

python windows openoffice.org uno pyuno

7
推荐指数
2
解决办法
4732
查看次数

使用Open/LibreOffice开始使用UNO和Java

我刚刚开始使用LibreOffice的4.0.1 UNO SDK开发一个Java项目,aaaand ...我在开始时几乎陷入困境.如果我使用OpenOffice.org而不是LibreOffice,我认为同样适用,所以任何帮助都表示赞赏.

我正在使用Eclipse Juno 4.2,我创建了一个类似"Hello World"的项目.我将/program目录添加到类路径(添加为外部类文件夹),并在此行代码的开头

XComponentContext ctx = Bootstrap.bootstrap();
Run Code Online (Sandbox Code Playgroud)

UnsatisfiedLinkError使用以下堆栈跟踪抛出异常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jpipe in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at com.sun.star.lib.util.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:50)
    at com.sun.star.lib.connections.pipe.PipeConnection.<clinit>(PipeConnection.java:48)
    at com.sun.star.lib.connections.pipe.pipeConnector.connect(pipeConnector.java:110)
    at com.sun.star.comp.connections.Connector.connect(Connector.java:114)
    at com.sun.star.comp.urlresolver.UrlResolver$_UrlResolver.resolve(UrlResolver.java:108)
    at com.sun.star.comp.helper.Bootstrap.bootstrap(Bootstrap.java:301)
    at xx.test.unotest.UnoTest.main(UnoTest.java:16)
Run Code Online (Sandbox Code Playgroud)

甚至try/catch围绕指令,但它没有被触发.

关于开始使用UNO,我找不到合适的文档,所以我不知道出了什么问题.安装SDK并配置环境变量.

我错过了什么吗?

编辑:我使用Windows 7 64位.也许这与问题有关.

java eclipse openoffice.org uno libreoffice

7
推荐指数
1
解决办法
6194
查看次数

有没有一种使用Python编写ODT的简单方法?

我的观点是,使用任一吊舱(从APPY框架,这是使用对我来说是痛苦)或OpenOffice的UNO桥,似乎很快就被弃用,而这需要OOo.org同时发动我的脚本运行是不理想可言.

任何人都可以指出我一个简洁而干净的ODT(桌子是我的优先级)的简洁方法,而不必再自己编码吗?

编辑:我正在尝试ODFpy似乎做我需要的东西,稍后会更多.

python pod uno odt

6
推荐指数
2
解决办法
4190
查看次数

使用c#以编程方式读取Openoffice Calc(.ods)?

我想知道是否可以使用c#以编程方式读取OpenOffice Calc电子表格,我可以为Excel(.xls和.xlsx)执行此操作,但无法找到读取计算电子表格的解决方案.

如果有人有解决方案,帮助我.

c# xml openoffice.org uno openoffice-calc

6
推荐指数
1
解决办法
9332
查看次数

unoconv使用www-data从终端工作,但不从php脚本也作为www-data工作

我在php中编写了以下函数

public static function convert($originFilePath, $outputDirPath, $toFormat)
{
    $command = 'echo $PATH & UNO_PATH=/usr/lib/libreoffice unoconv --format %s --output %s %s';
    $command = sprintf($command, $toFormat, $outputDirPath, $originFilePath);
    exec($command, $output, $result_var);

    return compact('output', 'result_var', 'outputDirPath', 'originFilePath', 'toFormat');
}
Run Code Online (Sandbox Code Playgroud)

它没有生成任何错误消息,也没有生成任何pdf文件.

在终端中,当我直接将unoconv作为www-data运行时,我没有任何问题.

这是我执行后的结果:

2013-05-26 03:05:30 Error: Array
(
    [output] => Array
        (
            [0] => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
        )

    [result_var] => 1
    [outputDirPath] => /var/virtual/storyzer.com/cake-json/ltequotationapp/webroot/outputfiles/Excel/2
    [originFilePath] => /var/virtual/storyzer.com/cake-json/ltequotationapp/webroot/outputfiles/Excel/2/dsadas.xlsx
    [toFormat] => pdf
)
Run Code Online (Sandbox Code Playgroud)

请指教.

php pdf shell ubuntu uno

6
推荐指数
2
解决办法
3722
查看次数