Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

14 Июль 2020, 12:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Защита структуры листа  (Прочитано 420 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Fiona
Участник
**
Offline Offline

Сообщений: 34


« Стартовое сообщение: 1 Июнь 2020, 08:28 »

Доброго времени суток!
Подскажите, пожалуйста, каким образом  (по аналогии с MSO) через макрос можно защитить структуру листа в LO?
Исходник был такой:
    ActiveSheet.Protect PASSWORD:="password", AllowInsertingRows:=True, DrawingObjects:=True, Contents:=True, Scenarios:=True _
       , AllowFormattingCells:=False, AllowFormattingColumns:=True, _
         AllowFormattingRows:=True, AllowInsertingColumns:=False, AllowInsertingRows _
       :=False, AllowSorting:=False, AllowFiltering:=True, AllowUsingPivotTables _
       :=False
Может быть есть литература на эту тему?
Записан
bk
Участник
**
Offline Offline

Сообщений: 18


« Ответ #1: 1 Июнь 2020, 09:54 »

Самое первое, что нашлось средствами xray: Лист.protect("пароль"), .unprotect снимает защиту.
Здесь посмотрите, что пишут:
https://wiki.openoffice.org/wiki/Documentation/DevGuide/Spreadsheets/Protecting_Spreadsheets
Записан
Fiona
Участник
**
Offline Offline

Сообщений: 34


« Ответ #2: 1 Июнь 2020, 10:05 »

Спасибо, но здесь только включить и выключить - ничего о дополнительных свойствах или параметрах защиты... В замешательстве
Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 922


« Ответ #3: 1 Июнь 2020, 10:09 »

https://forumooo.ru/index.php/topic,6019
Записан

С уважением,
Михаил Каганский
Fiona
Участник
**
Offline Offline

Сообщений: 34


« Ответ #4: 1 Июнь 2020, 12:22 »

Михаил, спасибо. Я верно поняла? это  VBA? у меня как раз желание переписать код для LO. 120 листов в книге - то, что нужно, уже залочено. Но задача загрузить в шаблон сверху данные из файлов пользователей. И еще есть функция добавления строки без снятия защиты листа.
kompilainenn написал, что надо переписывать макросы, иначе работать не будет. Но если API только в VBA, тогда есть ли в этом вообще смысл?
Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 922


« Ответ #5: 1 Июнь 2020, 12:28 »

Я верно поняла? это  VBA?

Не понял, Вы про что? В топике описан вопрос, а затем реализация решения средствами ЛО. На втором листе обсуждения описано, как оно работает в нынешних версиях ЛО. Из VBA там был, по-моему, только ответ #2 от economist - но он также не относился к установке деталей защиты.
Записан

С уважением,
Михаил Каганский
Fiona
Участник
**
Offline Offline

Сообщений: 34


« Ответ #6: 1 Июнь 2020, 12:59 »

Тогда я чего-то не поняла... Речь об этой реализации?
        CellProtection = oSheet.getCellRangeByName("A1:B2").CellProtection
   CellProtection.IsLocked = false
   oSheet.getCellRangeByName("A1:B2").CellProtection = CellProtection
Это же определенная область. Даже чисто гипотетически ее невозможно определить. Весь лист по умолчанию? Реально так работает, как написано? То, что было защищено, то и останется? а как тогда новую строку добавить с защищенными и незащищенными ячейками?
Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 922


« Ответ #7: 1 Июнь 2020, 13:07 »

Речь о чтении всего текста, а не только предложенных кусков кода.

В ЛО нет возможности задать настройки защиты листа из макроса. Но с версии 5.3 реализована возможность сохранять заданные вручную настройки. То есть возможно только вручную задать защиту с настройками в диалоге, а затем в макросе при необходимости отключать на время защиту, работать с листом и затем включать её снова - с сохранением настроек.
Записан

С уважением,
Михаил Каганский
Fiona
Участник
**
Offline Offline

Сообщений: 34


« Ответ #8: 1 Июнь 2020, 13:14 »

Теперь дошло... Спасибо большое
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!