问题标签 [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.
com - 如何为 OLE 自动化编写类库?
我有 Excel 插件,我添加了很多类模块,现在它非常庞大。我想将其转换为类型库或 COM 包,以便我可以将其重新用于 MS Office 套件中的其他应用程序。
我将加载项作为类库项目移植到 Visual Studio,但 Excel 自动化无法识别已编译的 .dll 文件中的类。直觉上,我认为我的代码中需要一个清单、一个接口或类似的东西。
为了公开类的方法和属性以在 OLE 自动化中使用,我需要知道什么?
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 个错误:
提前致谢。
excel - 使用自动化从 Excel 中获取文本。如果单元格太窄,请获取#####。我怎样才能避免这种情况?
我正在使用自动化从 Excel 工作表中获取文本。我这样做是因为我需要格式化的值(获取单元格的值不应用任何格式)。如果单元格所在的列太窄,我会得到“#####”,就像我通过 Excel 查看电子表格一样。我怎样才能避免这种情况?
编辑:
以下是相关代码:
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)计算范围内行数的方法。
还有别的事吗?
perl - Perl 的 OLE 自动化基础知识
我是这个 Perl Win32::OLE自动化的新手。我一直在阅读并尝试一些例子。我有几个问题(如果我使用了不正确的术语,请原谅 - 请纠正我):
OLE 可用于自动化 Visual Studio 2005 吗?我只找到了 Word、Excel 和 IE 的示例。你怎么知道可以使用哪个应用程序?
如何获取要使用的程序 ID 的名称。例如 Win32::OLE->new('Excel.Application') 中的 "Excel"
如何获得每个程序的可用功能。例如,Workbook 只能用于 Excel,不能用于 Word。
谢谢你的时间 :)
delphi - OLE 自动化 - WORD 表格 (Delphi)
我正在尝试在 WORD 中的表格中制作表格。当然在 finall 程序中它将是动态的,这不在这个示例中。
这是我的示例代码。
首先,我将新表(2 行,1 列)放在光标的位置,然后我尝试将第二个表放在第一个表的单元格(1,1)中,第三个表放在第一个表的单元格(2,1)中。第二张表也有 2 行 1 列,但第三张表有 3 行 1 列。但我得到的不是我想要的,而是只有一行的第二个和第三个表,不管我是否在他们的单元格中放了一些东西。我总是只看到我放在那个表中的最后一个字符串。
更重要的是,如果我在第一个表中放置 1 行和 2 列表,则一切正常。
你能帮助我吗。
谢谢, 洛克
c# - 从 C#,打开任意应用程序
相关问题 [stackoverflow]在这里。
我正在尝试执行上述操作,但我想更进一步。我想使用文件类型的默认编辑器打开任意文件。从那时起,我想让我的用户像往常一样与文件交互,或者继续在我的应用程序中工作。扩展是用户完成编辑后发生的事情。有没有办法可以从外部应用程序捕获关闭(最好是保存)事件并将其用作执行其他操作的触发器?出于我的目的,跟踪外部应用程序的关闭就可以了。
我可以在特定情况下做到这一点。例如,我可以从我的应用程序中打开一个 Word 实例并跟踪我的应用程序感兴趣的事件。但是,我想将我的应用程序与 Word 分离。我想允许我的用户使用他们选择的任何文档编辑器,然后在幕后管理正在编辑的文件的存储。
delphi - 使用 Delphi 使用 OLE 自动化格式化单个 excel 列的问题
我有一段代码用于格式化 Excel 中的一系列单元格。它在 Excel 2007 中运行良好,但是当范围只有 1 列宽并且它是 Excel 2003 而不是 2007 时,我会收到一条错误消息,指出我正在为边框的线条样式分配无效值。
** 诸如“xlInsideHorizontal”之类的贵重物品,我已将它们声明为具有适当值的 CONSTANT。
请帮忙。
com - 是否可以自动化点击运行应用程序?
我有一个通过 COM/OLE 自动化自动化 Microsoft Word 的小应用程序。
不幸的是,这不适用于 Word 的虚拟化即点即用版本,因为它们在注册表中没有所需的键。(至少不是他们所期望的)换句话说:CreateObject
失败是因为没有注册必要的 COM 类。
有什么方法可以自动化Microsoft Office的即点即用版本?也许一些兼容层?
编辑:我发现只有两页用户/开发人员抱怨这个。要么 OLE 自动化已经过时,要么没有人使用 C2R 版本......
c# - .NET DateTime,在转换为 OADate 和从 OADate 转换时分辨率不同?
我正在将 DateTime 转换为 OADate。在将 OADate 转换回来时,我期望得到完全相同的 DateTime,但现在它只有毫秒分辨率,因此有所不同。
报价来自:634202170964319073
来自 b 的报价:634202170964310000
OADate 双倍:40437.290467951389
这是什么原因?DateTime 的分辨率显然已经足够好了。