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

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

19 Январь 2021, 20:44 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Сообщений: 10


« Стартовое сообщение: 4 Декабрь 2020, 07:55 »

Добрый день, друзья!
Возникла задачка перевода файла с макросами из MS excell в LO.
В файле используется структура(группировка столбцов).
Если заблокировать лист в excell , то нажатие на + и посмотреть скрытые следующие уровни группировки  не возможно.
В LO же для заблокированного листа можно нажать на плюс и посмотреть следующие уровни группировки.
Пробовала защитить структуру листа  , всё равно возможность показать детали возможно.

Суть данного функционала, что человек, знающей пароль, может разблокировать лист  и посмотреть детали(скрытые группировкой столбцы), а не знающий пароль не может.

Пока думаю написать макросы и скрывать и показывать соответствующие столбцы, но это не так удобно, как было в excell


* lo.png (23.76 Кб, 756x362 - просмотрено 6 раз.)

* excell.png (44.79 Кб, 1056x453 - просмотрено 6 раз.)
Записан
eeigor
Ubuntu 18.04 LTS • LO 7.0.2.2
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 269



« Ответ #1: 4 Декабрь 2020, 08:34 »

Уточнение: в Excel можно раскрывать уровни, если при защите листа установлен соответствующий параметр (UserInterfaceOnly:=True). Защиту нужно ставить не руками, а макросом каждый раз при открытии рабочей книги, и всё будет раскрываться на защищённом листе.
В остальном – надо разбираться…

UPD:
Насколько мне известно, в Calc метод листа "protect" не позволяет управлять группировкой (принимает только пароль). Через интерфейс пользователя доступен ряд параметров, через API к которым и вовсе доступа нет (?). Похоже, что так… И если да, то надо искать другое решение.
« Последнее редактирование: 4 Декабрь 2020, 09:22 от eeigor » Записан
Ammaretto
Участник
**
Offline Offline

Сообщений: 10


« Ответ #2: 4 Декабрь 2020, 09:13 »

Наоборот, нужно , чтобы не раскрывалось, если установлена защита.
НА данный момент открывается, попробую поискать  соответствующий параметр в Libreoffice
Записан
eeigor
Ubuntu 18.04 LTS • LO 7.0.2.2
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 269



« Ответ #3: 4 Декабрь 2020, 09:23 »

Попытайтесь по другому организовать данные. Например, данные исходные – на скрытом листе, а итоги – в сводной таблице. Тут надо проверить, можно ли в сводной таблице, как в Excel двойным щелчком, «раскрыть детали» (скопировав составляющие данные на отдельный лист).
« Последнее редактирование: 4 Декабрь 2020, 09:37 от eeigor » Записан
Bigor
Мастер
*****
Offline Offline

Пол: Мужской
Сообщений: 1 035


« Ответ #4: 4 Декабрь 2020, 09:57 »

Защита листа в Excel, Calc это защита от честного человека, вообще нет смысла с ней заморачиваться, если только формулы защитить, что бы случайно не потерли
Записан

Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут
Ammaretto
Участник
**
Offline Offline

Сообщений: 10


« Ответ #5: 4 Декабрь 2020, 10:13 »

Смысл есть задача сохранить функциональность формы. На данный момент достаточно такой защиты.
На другой лист тоже вариант, но хотелось бы сохранить функциональность именно в этом виде и при переносе на другой лист будет не совсем удобно....
Записан
kompilainenn
Мастер
*****
Offline Offline

Сообщений: 3 128



« Ответ #6: 4 Декабрь 2020, 10:45 »

Тут надо проверить, можно ли в сводной таблице, как в Excel двойным щелчком, «раскрыть детали» (скопировав составляющие данные на отдельный лист).
Можно, но там есть бага
Записан

Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут
eeigor
Ubuntu 18.04 LTS • LO 7.0.2.2
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 269



« Ответ #7: 4 Декабрь 2020, 11:44 »

Ammaretto, сохранить функциональность в прежнем виде не получится. Более того, скрыв столбец макросом, защитив лист, можно легко вытянуть данные на другой лист, обратившись к соответствующим ячейкам с другого листа. И если данные сгруппированы, а уровень скрыт, то также ничто не мешает обратиться к скрытым ячейкам через =ИмяЛиста.A10 (для примера).
« Последнее редактирование: 4 Декабрь 2020, 11:56 от eeigor » Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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