gpt4 book ai didi

c# - 在 BluePrism 中引用 Office Interop 对象

转载 作者:行者123 更新时间:2023-11-30 22:56:01 25 4
gpt4 key购买 nike

在 BluePrism 提供的开箱即用的 MS VBO 之外。是否有人成功导入/引用 (COM) Office Interop 对象(Word、Excel、Outlook 等)以用于 BluePrism 代码阶段?请告诉我怎么做?

我注意到有一个类似的问题,但没有成功回答: DLLImportAttribute C# - Outlook .

最佳答案

请查看我对您所引用问题的回答,它应该会让您了解如何使用 VB.NET 来做到这一点。

如果你坚持用 C# 来做,你需要确保你添加了一个命名空间和对对象代码选项的引用(我的路径只是指向 GAC 中的某个地方,你应该将 DLL 复制到其他地方):

enter image description here

然后您可以在代码阶段使用 DLL 中的对象:

Application app = new Application(){
Visible = true
};

Workbook wb = app.Workbooks.Add();
Worksheet ws = (Worksheet)wb.Worksheets.Add();
ws.Visible = XlSheetVisibility.xlSheetVisible;

如您所见,您还可以使用命名枚举,但就像在 C# 中一样(与在 VBA 中不同)您需要完全指定它(XlSheetVisibility.xlSheetVisible 而不仅仅是 xlSheetVisible)

编辑:VB.NET 的好处是您可以使用 CreateObject() 方法与 Excel Interop DLL 交互,而无需显式指定该 DLL 的路径。如果您没有将 DLL 存储到所有资源 PC 共用的位置的选项,这将很有用。但是,如果可以,那么 C# 方法不会让您头疼。

至于能够引用带有 Excel“前缀”的 Excel 对象(例如:Excel.Workbook 而不仅仅是 Workbook),您需要指定一个Excel 命名空间的别名。你可以这样做:

enter image description here

之后您的代码将起作用:

var excelApp = new Excel.Application();
excelApp.Visible = true;
Excel.Workbooks books = excelApp.Workbooks;

这实际上不是一个坏方法,因为某些 Excel 类可能与其他 .NET 类同名。我相信我也必须这样做,因为 TableDocument 或其他...

关于c# - 在 BluePrism 中引用 Office Interop 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54787538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com