我有以下代码来阅读Excel文件。但最近,我的用户在excel文件上输入了密码。因此,当我尝试读取文件时,会显示一条消息并要求输入密码以在编辑中打开excel,或者只在“只读”模式下打开它。
我只需要阅读数据。然后我只想在没有弹出窗口的情况下以只读模式打开它。
您有什么想法我能解决这个问题吗?
----------------Get the file to open ---------------------------
v_fName := :upload.ti_file_name_upload;
clear_form ( no_validate );
--------------INITIATE EXCEL APPLICATION---------------------------
application := client_OLE2.create_obj('Excel.Application');
client_OLE2.set_property(application,'Visible', 'false');
----------------GET WORKBOOKS FROM EXCEL APPLICATION---------------
workbooks := client_OLE2.Get_Obj_Property(application, 'Workbooks');
----------------OPEN REQUIRED WORKBOOK-----------------------------
args := client_OLE2.CREATE_ARGLIST;
client_OLE2.add_arg(args,v_fName);
workbook := client_OLE2.GET_OBJ_PROPERTY(workbooks,'Open',args);
client_OLE2.destroy_arglist(args);
----------------OPEN REQUIRED WORKSHEET----------------------------
args:= client_OLE2.create_arglist;
client_OLE2.add_arg(args, 'HC');
worksheet := client_OLE2.GET_OBJ_PROPERTY(workbook, 'Sheets', args);
client_OLE2.destroy_arglist(args);
----------------Specify columns that must be read------------------
以及其他代码......
谢谢! 中号
答案 0 :(得分:0)
在client_ole2包中没有这样的参数,你可以做的是在获取带路径的文件名后(v_fName:=:upload.ti_file_name_upload;),使用不同的名称复制并粘贴为只读,然后使用client_ole2打开它