问题标签 [ole-automation]

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 投票
2 回答
754 浏览

com - 如何为 OLE 自动化编写类库?

我有 Excel 插件,我添加了很多类模块,现在它非常庞大。我想将其转换为类型库或 COM 包,以便我可以将其重新用于 MS Office 套件中的其他应用程序。

我将加载项作为类库项目移植到 Visual Studio,但 Excel 自动化无法识别已编译的 .dll 文件中的类。直觉上,我认为我的代码中需要一个清单、一个接口或类似的东西。

为了公开类的方法和属性以在 OLE 自动化中使用,我需要知道什么?

0 投票
3 回答
6052 浏览

windows - 构建 MFC 自动化示例(使用 OLE 自动化访问 Excel)。无法编译

我正在尝试构建http://support.microsoft.com/kb/178749/EN-US/ 中描述的示例,以便构建使用自动化以编程方式访问 Excel 的应用程序。我有 Visual C++ 2005/Visual Studio 2005。有些指令不完全匹配(主要是类向导),但总体思路似乎是一样的。

问题:使用“新类”创建包装类后,我没有得到一个 excel.h 文件。所以我不能 #include 该文件,因为它在步骤 13 中指定。我确实在我的 windebug 目录中获得了一个 excel.tlh 和一个 excel.tli,但这似乎不起作用。我尝试了所有订单

...包括将其中一个文件排除在编译之外,但我仍然会遇到大量编译错误。

以下是上述 #includes 的前 5 个编译错误:

以下是其中包括的前 5 个错误:

以下是其中包括的前 5 个错误:

提前致谢。

0 投票
2 回答
1067 浏览

excel - 使用自动化从 Excel 中获取文本。如果单元格太窄,请获取#####。我怎样才能避免这种情况?

我正在使用自动化从 Excel 工作表中获取文本。我这样做是因为我需要格式化的值(获取单元格的值不应用任何格式)。如果单元格所在的列太窄,我会得到“#####”,就像我通过 Excel 查看电子表格一样。我怎样才能避免这种情况?

编辑:

以下是相关代码:

0 投票
9 回答
155591 浏览

vba - Excel range.Rows 属性的真正作用是什么?

好的,我正在完成一个旧版 Excel-VBA 应用程序的附加项目,我再次遇到了神秘range.Rows(?) 和worksheet.Rows属性的难题。

有谁知道这些属性的真正作用以及它们应该为我提供什么?(注意:所有这些可能也适用于相应的*.Columns属性)。

我真正希望能够使用它的是返回一系列行,如下所示:

但是我从来没有能够让它做到这一点,即使 Intellisense 显示了两个论据。相反,我必须使用其他两种或三种(非常笨拙的)技术中的一种。

该帮助非常无用(对于 Office VBA 通常如此),并且无论我添加多少其他术语,谷歌搜索“行”都不是很有用。

我能够使用它的唯一事情是 1) 返回单行作为范围 ( rng.Rows(i)) 和 2) 返回范围 ( ) 中的行数rng.Rows.Count。是这样吗?真的没有其他好处了吗?

澄清:我知道它返回一个范围,并且还有其他方法可以获取一系列行。我所要求的具体是我们从中得到什么.Rows(),我们还没有从.Cells()and得到.Range()什么?我知道的两件事是 1)返回单行范围的更简单方法和 2)计算范围内行数的方法。

还有别的事吗?

0 投票
3 回答
1454 浏览

perl - Perl 的 OLE 自动化基础知识

我是这个 Perl Win32::OLE自动化的新手。我一直在阅读并尝试一些例子。我有几个问题(如果我使用了不正确的术语,请原谅 - 请纠正我):

  1. OLE 可用于自动化 Visual Studio 2005 吗?我只找到了 Word、Excel 和 IE 的示例。你怎么知道可以使用哪个应用程序?

  2. 如何获取要使用的程序 ID 的名称。例如 Win32::OLE->new('Excel.Application') 中的 "Excel"

  3. 如何获得每个程序的可用功能。例如,Workbook 只能用于 Excel,不能用于 Word。

谢谢你的时间 :)

0 投票
2 回答
5601 浏览

delphi - OLE 自动化 - WORD 表格 (Delphi)

我正在尝试在 WORD 中的表格中制作表格。当然在 finall 程序中它将是动态的,这不在这个示例中。

这是我的示例代码。

首先,我将新表(2 行,1 列)放在光标的位置,然后我尝试将第二个表放在第一个表的单元格(1,1)中,第三个表放在第一个表的单元格(2,1)中。第二张表也有 2 行 1 列,但第三张表有 3 行 1 列。但我得到的不是我想要的,而是只有一行的第二个和第三个表,不管我是否在他们的单元格中放了一些东西。我总是只看到我放在那个表中的最后一个字符串。

更重要的是,如果我在第一个表中放置 1 行和 2 列表,则一切正常。

你能帮助我吗。

谢谢, 洛克

0 投票
4 回答
1540 浏览

c# - 从 C#,打开任意应用程序

相关问题 [stackoverflow]在这里

我正在尝试执行上述操作,但我想更进一步。我想使用文件类型的默认编辑器打开任意文件。从那时起,我想让我的用户像往常一样与文件交互,或者继续在我的应用程序中工作。扩展是用户完成编辑后发生的事情。有没有办法可以从外部应用程序捕获关闭(最好是保存)事件并将其用作执行其他操作的触发器?出于我的目的,跟踪外部应用程序的关闭就可以了。

我可以在特定情况下做到这一点。例如,我可以从我的应用程序中打开一个 Word 实例并跟踪我的应用程序感兴趣的事件。但是,我想将我的应用程序与 Word 分离。我想允许我的用户使用他们选择的任何文档编辑器,然后在幕后管理正在编辑的文件的存储。

0 投票
1 回答
2604 浏览

delphi - 使用 Delphi 使用 OLE 自动化格式化单个 excel 列的问题

我有一段代码用于格式化 Excel 中的一系列单元格。它在 Excel 2007 中运行良好,但是当范围只有 1 列宽并且它是 Excel 2003 而不是 2007 时,我会收到一条错误消息,指出我正在为边框的线条样式分配无效值。

** 诸如“xlInsideHorizo​​ntal”之类的贵重物品,我已将它们声明为具有适当值的 CONSTANT。

请帮忙。

0 投票
2 回答
1944 浏览

com - 是否可以自动化点击运行应用程序?

我有一个通过 COM/OLE 自动化自动化 Microsoft Word 的小应用程序。

不幸的是,这不适用于 Word 的虚拟化即点即用版本,因为它们在注册表中没有所需的键。(至少不是他们所期望的)换句话说:CreateObject失败是因为没有注册必要的 COM 类。

有什么方法可以自动化Microsoft Office的即点即用版本?也许一些兼容层?

编辑:我发现只有页用户/开发人员抱怨这个。要么 OLE 自动化已经过时,要么没有人使用 C2R 版本......

0 投票
3 回答
8828 浏览

c# - .NET DateTime,在转换为 OADate 和从 OADate 转换时分辨率不同?

我正在将 DateTime 转换为 OADate。在将 OADate 转换回来时,我期望得到完全相同的 DateTime,但现在它只有毫秒分辨率,因此有所不同。

报价来自:634202170964319073

来自 b 的报价:634202170964310000

OADate 双倍:40437.290467951389

这是什么原因?DateTime 的分辨率显然已经足够好了。