Итак, я хочу открыть защищенный паролем файл excel, предлагающий пользователю ввести пароль, но я хочу проверить, действительно ли файл требует пароль, прежде чем я попрошу пользователя ,ABAP OLE - проверка наличия защищенного OLE-объекта
Мой нынешний подход - это и работает.
CREATE OBJECT app 'EXCEL.APPLICATION'.
CALL METHOD OF app 'WORKBOOKS' = workbook.
CALL METHOD OF workbook 'OPEN'
EXPORTING
#1 = arch "filename
#2 = 0 "Update links
#3 = 0 "ReadOnly
#4 = 1 "Format
#5 = gv_password. "password
IF sy-subrc NE 0.
CALL METHOD OF app 'QUIT'.
FREE OBJECT app. FREE OBJECT workbook.
CLEAR: app, workbook.
CREATE OBJECT app 'EXCEL.APPLICATION'.
gv_password = <user_entered_password>
CALL METHOD OF app 'WORKBOOKS' = workbook.
CALL METHOD OF workbook 'OPEN'
EXPORTING
#1 = arch "filename
#2 = 0 "Update links
#3 = 0 "ReadOnly
#4 = 1 "Format
#5 = gv_password. "password
ENDIF.
Это в основном пытается открыть файл excel с использованием пустого пароля, и если это не удается, пользователь запрашивает. Однако это не очень быстрое или элегантное решение. Есть ли способ лучше? Возможно, проверяя свойство непосредственно перед тем, как открыть его? Благодаря
Спасибо - не видел, что – db579