我将 VB-Express 代码保存为 .dll,并使用 regasm 注册它并创建了一个 .tlb 文件。

但是当我尝试在 Excel 模块中运行它的函数时,我得到: 运行时错误‘453’:在 kernel32 中找不到 DLL 入口点 RegisterServiceProcess

我错过了什么步骤?

有帮助吗?

解决方案

http://richnewman.wordpress.com/2007/04/15/a-beginner's-求婚 - a-net-net-library-from-excel/或者更好仍然尝试Exceldna( http://groups.google.com/group/ExcelDna )

其他提示

我认为您正在创建一个 .Net dll 并尝试从面向 COM 的环境 (VBA) 调用它,如果没有帮助,这将无法工作。如果我猜对了,那么您需要研究 .Net 的 COM Interop 元素:谷歌抛出了很多看起来有前途的链接,其中之一是 本文.

它看起来有点不愉快,但我希望这种肮脏可以隐藏在某个地方......

试试这篇 Microsoft 知识库文章: 无法在 32 位 MS Excel 中运行调用 16 位 DLL 的宏.

您是否有访问该 DLL 的适当权限?

感谢大家的意见,你们帮助我又向前迈进了一大步。按照您提供的指南后,我得到了: 运行时错误:'-2147024894'(80070002)':找不到文件或程序集名称 AssemblyName 或其依赖项之一。

但我可以用这个解决这个问题 解决方法.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top