Вниз
Скачать: CL | DM;

XLS c паролем :(   Найти похожие ветки 

← →
9899100   (2008-10-08 11:37) [0]

подскажите как при открытии запороленного XLS программно указать пароль ??

Var XL:Variant;
begin
XL := CreateOleObject("Excel.Application");
XL.DisplayAlerts := false;
XL.WorkBooks.Open("d:\temp\book.xls");
Label1.Caption:=XL.WorkBooks[1].WorkSheets[1].CElls[0,0];

выдает ексель с запросом пароля


← →
Palladin ©   (2008-10-08 11:42) [1]

запиши макрос и посмотри


← →
9899100   (2008-10-08 11:51) [2]

какжеш я его запишу ежели запрос пароля при открытии файла выдаеться


← →
9899100   (2008-10-08 11:53) [3]

вот такой вот макрос записался
Sub Макрос1()

   ChDir "D:\temp"
   Workbooks.Open Filename:="D:\temp\book.xls"
End Sub


← →
sniknik ©   (2008-10-08 11:55) [4]

а ты начинай макрос до открытия файла...


← →
Palladin ©   (2008-10-08 11:55) [5]

да точно такжеш...
открываем Excel
идем в Сервис\Макрос\Начать запись
открываем файл с паролем, введя его
идем в Сервис\Макрос\Макросы
находим и выделяем свежезаписанный макрос и нажимаем на кнопку "Изменить"
наслаждаемся макросом


← →
9899100   (2008-10-08 11:58) [6]

попробовал
записал
но там нет ввода пароля :((
тока открыть и все


← →
Palladin ©   (2008-10-08 11:59) [7]

хм, и вправду не написал, негодяй... ну тогда держи, болезный :)

Var XL:Variant;
begin
XL := CreateOleObject("Excel.Application");
XL.DisplayAlerts := false;
XL.WorkBooks.Open(FileName:="d:\temp\book.xls",Password="мой супер секретный пароль 123");
Label1.Caption:=XL.WorkBooks[1].WorkSheets[1].CElls[0,0];


← →
sniknik ©   (2008-10-08 12:01) [8]

тогда подключи не через вариант а через обьект (серверы excel), хотя бы для примера, и смотри там методы ->

 Workbooks = interface(IDispatch)
   ["{000208DB-0000-0000-C000-000000000046}"]
   function Get_Application: ExcelApplication; safecall;
   function Get_Creator: XlCreator; safecall;
   function Get_Parent: IDispatch; safecall;
   function Add(Template: OleVariant; lcid: Integer): ExcelWorkbook; safecall;
   procedure Close(lcid: Integer); safecall;
   function Get_Count: Integer; safecall;
   function Get_Item(Index: OleVariant): ExcelWorkbook; safecall;
   function Get__NewEnum: IUnknown; safecall;
   function _Open(const Filename: WideString; UpdateLinks: OleVariant; ReadOnly: OleVariant;
                  Format: OleVariant; Password: OleVariant; WriteResPassword: OleVariant;
                  IgnoreReadOnlyRecommended: OleVariant; Origin: OleVariant;
                  Delimiter: OleVariant; Editable: OleVariant; Notify: OleVariant;
                  Converter: OleVariant; AddToMru: OleVariant; lcid: Integer): ExcelWorkbook; safecall;


← →
9899100   (2008-10-08 12:02) [9]

от спасибо :)

а я как раз сам нарыл :))
XL.WorkBooks.Open(FileName := "d:\temp\book.xls", Password := "bravo");


← →
Palladin ©   (2008-10-08 12:03) [10]

нафика, в самом редакторе макросов все видно



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.008 c
2-1223189733
Виталий_д
2008-10-05 10:55
2008.11.16
Глобальный keyboard shortcut


2-1223225518
koha!
2008-10-05 20:51
2008.11.16
TListView - и снова вопросы....


2-1223290088
MsGuns
2008-10-06 14:48
2008.11.16
Можно ли поместить картинку в библиотечный модуль ?


15-1221562788
desc
2008-09-16 14:59
2008.11.16
Как в Dll работать с набором данных ?


3-1209800278
temposys
2008-05-03 11:37
2008.11.16
проблема с коннекцией к БД InterBase




   Наверх