Цитата:
Сообщение от
demianimp
Добрый день.
Прошу помощи в моей проблеме. Формирую документ Excel через код, научился блокировать доступ к ячейкам на вкладке, но никак не могу найти как в аксапте сделать код:
election.AutoFill Destination:=Range("A42:A43"), Type:=xlFillDefault //разрешить редактировать ячейки.
ActiveWorkbook.Protect Structure:=True, Windows:=False //Защитить книгу
Люди добрые, помогите пожалуйста. Может у кого есть готовый рецепт проблемы
Спасибо всем за помощь. Я нашел такое решение своей проблемы.
1) Разрешить редактировать определенные ячейки
X++:
ComExcelDocument_RU comExcelDocument;
COM comDocument,
comApp,
comWorkBook,
comWorkSheet,
comProtection,
comRange,
comEditRanges;
;
comExcelDocument = new ComExcelDocument_RU();
comExcelDocument.newFile('', false);
comDocument = comExcelDocument.getComDocument();
comApp = comDocument.application();
comWorkSheet = comApp.ActiveSheet();
comWorkBook = comApp.ActiveWorkbook();
/*
сюда вставить нужный алгоритм
*/
comRange = comWorkSheet.range(/*нужные ячейки*/);
comProtection = comWorkSheet.protection();
comEditRanges = comProtection.AllowEditRanges();
comEditRanges.Add('comRange', comRange);
comWorkSheet.protect('Pa$$w0rD');
2) Запрет изменения структуры документа EXCEL
X++:
ComExcelDocument_RU comExcelDocument;
COM comDocument,
comApp,
comWorkBook;
;
comExcelDocument = new ComExcelDocument_RU();
comExcelDocument.newFile('', false);
comDocument = comExcelDocument.getComDocument();
comApp = comDocument.application();
comWorkBook = comApp.ActiveWorkbook();
/*
сюда вставить нужный алгоритм
*/
comWorkBook.protect('Pa$$w0rD');