gpt4 book ai didi

ole - ABAP OLE - 打开 excel 受密码保护的工作簿

转载 作者:行者123 更新时间:2023-12-04 18:24:55 26 4
gpt4 key购买 nike

我正在尝试使用 SAP ABAP OLE OBJECT 打开受密码保护的 excel 文件,如下所示:

DATA: lt_excel_line(4096) OCCURS 10 WITH HEADER LINE.
DATA: app TYPE ole2_object,
workbook TYPE ole2_object,
worksheet TYPE ole2_object.

CREATE OBJECT app 'EXCEL.APPLICATION'.
SET PROPERTY OF app 'VISIBLE' = 0.

CALL METHOD OF app 'WORKBOOKS' = workbook.

CALL METHOD OF workbook 'OPEN'
EXPORTING
#1 = '<filename>'
#5 = '<password>'.

文件名和密码绝对正确,下面的VBA代码按要求打开文件没问题:

Dim wb1 As Workbook
Set wb1 = Workbooks.Open Filename:="<filename>", Password:="<password>")

但是 ABAP 代码总是返回 sy-subrc = 2。有人知道会发生什么吗?或者我还能尝试什么?感谢您的帮助。

最佳答案

我认为问题在于参数只是位置(只是猜测),因为 SAP GUI 自动化不支持参数名称。 FilenamePassword 之间有 3 个参数,因此您对它们进行了正确编号,但我猜 SAP GUI 自动化 Controller 不会那样看。

我复制了你的问题并让它按如下方式工作:

CALL METHOD OF workbook 'OPEN' = document
EXPORTING
#1 = '<filename>'
#2 = 0 "UpdateLinks
#3 = 0 "ReadOnly
#4 = 1 "Format
#5 = '<password>'.

这里我明确地传递了参数UpdateLinksReadOnlyFormat

我首先在 VBA 中对其进行了测试。看来 Format (#4) 必须设置为 true。我不知道那是做什么的。

请记住像我在这里所做的那样将文档句柄设置为此调用的返回值,否则您将没有对它的引用!

关于ole - ABAP OLE - 打开 excel 受密码保护的工作簿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16164930/

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