问题标签 [xll]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2045 浏览

c++ - 在 xll 中通过 xlcFormatNumber 设置 Excel 数字格式

我正在尝试设置单元格的数字格式,但对 xlcFormatNumber 的调用失败,将单元格数字格式保留为“常规”。我可以使用 xlSet 成功设置单元格的值。

我还没有找到有关此命令用法的任何文档。在这里的任何帮助将不胜感激。

0 投票
2 回答
790 浏览

c++ - 从(非托管)C++ 调用 XLL

我有一个 XLL Excel 插件,现在另一个团队想在他们的项目中使用相同的功能(非托管 C++)。有没有办法直接从 C++ 与这个 XLL 交互?

0 投票
2 回答
741 浏览

c++ - 在 Excel XLOPER 中通过 char* 返回日文字符

我正在从数据源中检索日文字符,我想在 XLOPER 中将此数据返回到 Excel。我使用的是日文版的 Excel 2003(因此是 XLOPERs 而不是 XLOPER12s)。

参数 pszReturn 分配给 XLOPER。我遇到的问题是“アフリカの女王”在Excel中显示为“ƒAƒtƒŠƒJ,Ì—‰¤”。

手动将代码页设置为 932 会产生与 CP_THREAD_ACP 相同的结果,所以我认为那部分是正确的。

任何帮助将不胜感激。

0 投票
2 回答
2096 浏览

c# - 在 C# 运行时创建一个 Excel 工作表函数 (UDF)

是否可以在 C# 中动态创建工作表函数,即不使用方法属性方法?或者这是仅使用 XLL 支持的东西?

我要实现的是从源中检索函数列表(连同参数)并注册这些函数。这些函数只是作为对服务器的调用,所以这些函数的内容不是什么大问题。

感谢您的投入!

0 投票
1 回答
236 浏览

excel - 将 XLL 插件功能转换为本机 VB 模块:刷新公式的问题

我有一个 .xll 插件,它注册了我们在许多地方的 excel 表中使用的一些函数。性能很差,而且我们没有原始代码,所以我们通过在模块中编写VB中的函数来复制功能。这些功能按预期工作,性能要好得多。

问题是工作表不能自动识别新功能。例如,假设一个单元格的公式是“=CustomFunction()”,它之前在 xll 中定义,现在已经在 VB 中定义。这将继续显示为“#NAME”,除非我手动编辑单元格,然后按 Enter。然后它会正确地选择 VB 公式并进行计算。

重新计算公式的标准技巧:Ctrl/Alt/Shift/F9 不起作用。

有没有人经历过这种情况?知道如何解决这个问题吗?

0 投票
3 回答
1730 浏览

c - 从 Delphi 调用特定的 Win32 API - 为什么在没有“asm pop ...”的情况下会出现异常?

我正在使用 Delphi 为 Excel 制作一个 XLL 插件,这涉及对 xlcall32.dll 的Excel4v函数进行大量调用。然而,我猜这里很少有 Delphi 专家使用过那个特定的 API,我希望这个问题也可能在其他 API 中被观察到。

在 C 语言中,特别是在Microsoft Excel 2007 XLL SDK附带的 xlcall.h 文件中,Excel4v 定义为:

在德尔福我正在使用:

LPXLOPER 是指向结构(在 C 中)或记录(在 Delphi 中)的指针。

我一直在做关于在 Delphi 中声明 C 函数的功课(这篇优秀的文章很有帮助),我认为我正确地声明了 Excel4v。但是,从 Delphi 代码调用该函数会导致异常(“访问冲突......”是我一直看到的),除非它们后面跟着以下行:

其中“sink”在某处定义为整数。

我对组装一无所知......所以我没有办法尝试用“asm pop sink; end;”来修复异常。但是“asm pop sink; end;” 确实修复了异常。我第一次看到它是在这篇关于使用 Delphi 制作 XLL 的有用文章中使用的。这是最相关的报价:

“在 Delphi 中,加载项的最大绊脚石是堆栈上返回地址之后的额外参数。每次调用 Excel 时都会免费提供。我从来没有发现它包含什么,但只要你把它扔掉, 您的加载项将正常工作。添加行 asm pop variable, end; 在每次调用后,其中变量可以是任何全局、局部或对象变量,至少 4 字节长-整数很好。重复-这必须是包含在每次 Excel4v 调用之后。否则,您正在构建一个定时炸弹。”

基本上我想了解实际发生了什么,以及为什么。什么可能导致 Win32 函数返回“堆栈上的返回地址之后的额外参数”,这实际上意味着什么?

是否有另一种方法来解决这个问题,例如使用不同的编译器选项或声明函数的不同方式?

调用“asm pop sink; end;”有什么风险吗?每次调用 Excel4v 后...?它似乎工作正常,但是,由于我不明白发生了什么,感觉有点危险......

0 投票
2 回答
4903 浏览

excel - 我可以从启用所有宏的 .cmd 脚本运行 Excel 吗?

如何从命令行/ cmd 脚本运行 excel,以便它不会提示我是否要在运行它的电子表格中启用宏?

0 投票
1 回答
578 浏览

excel - 连接 Excel 时 XLL 插件的 DDEConnect() 失败?

我在连接到 Excel 时遇到问题,有一个插件从 db 读取并尝试用 DDE 中的数据填充 excel 工作表,有时在 DDEConnect 函数上似乎会失败,错误号为 16390 - DMLERR_INVALIDPARAMETER DDEML 函数调用的参数无效。

更有趣的是,当按 F9(重新计算工作表中的所有公式)然后从宏运行时,它会更频繁地失败,该宏会遍历所有工作表并重新计算公式。

任何有 Excel 的 DDE 经验的人?

问候, 米卡

0 投票
1 回答
1172 浏览

c# - 在 C# 中调用 XLL

我有一个 XLL 插件 (Test.xll)。我希望在我的 C# (VS2008/.Net 3.5) 应用程序中使用它。如果有人可以指导我如何在我的 C# 应用程序中使用它。

如果有人可以指导我如何在 C# 应用程序中使用这个 XLL,那就太好了。

任何帮助表示赞赏。

问候, 图沙尔

0 投票
5 回答
5363 浏览

c# - 从 C# 调用 Excel/DLL/XLL 函数

我在 Excel 插件(xll)中有一个特定的功能。该插件是专有的,我们无权访问源代码。但是,我们需要调用插件中包含的一些函数,并且我们希望从 C# 程序中调用它。

目前,我正在考虑编写一个 C++ 接口,用 xlopers 调用 Excel 函数,然后从 C# 调用这个 C++ 接口。

有过此类问题经验的人知道什么是最好的解决方案吗?

安东尼