Класс TableProtectionProperties
Класс TableProtectionProperties предназначен для настройки параметров защиты листа в табличном документе (аналог раздела «Разрешенные действия» в меню «Управление защитой»). Данный класс используется в методах Table::setProtection() и Table::getProtectionProperties().
| Поле | Значение по умолчанию | Описание |
|---|---|---|
TableProtectionProperties.deleteColumns | false | Разрешить удалять колонки |
TableProtectionProperties.deleteRows | false | Разрешить удалять строки |
TableProtectionProperties.filterData | false | Разрешить фильтровать данные |
TableProtectionProperties.formatCells | false | Разрешить форматировать ячейки |
TableProtectionProperties.formatColumns | false | Разрешить форматировать столбцы |
TableProtectionProperties.formatRows | false | Разрешить форматировать строки |
TableProtectionProperties.insertAndEditObjects | false | Разрешить вставлять и редактировать объекты: изображения, диаграммы, фигуры и текстовые поля |
TableProtectionProperties.insertAndEditPivotTables | false | Разрешить вставлять и редактировать сводные таблицы |
TableProtectionProperties.insertColumns | false | Разрешить вставлять столбцы |
TableProtectionProperties.insertLinks | false | Разрешить вставлять и редактировать ссылки в ячейках |
TableProtectionProperties.insertRows | false | Разрешить вставлять строки |
TableProtectionProperties.selectProtectedCells | true | Разрешить выделение защищенных ячеек |
TableProtectionProperties.sortData | false | Разрешить сортировать данные |
Пример
TableProtectionProperties tableProps = TableProtectionProperties();
tableProps.deleteColumns = false;
tableProps.deleteRows = false;
tableProps.filterData = true;
tableProps.formatCells = true;
tableProps.formatColumns = true;
tableProps.formatRows = true;
tableProps.insertAndEditObjects = false;
tableProps.insertAndEditPivotTables = false;
tableProps.insertColumns = false;
tableProps.insertLinks = true;
tableProps.insertRows = false;
tableProps.selectProtectedCells = true;
tableProps.sortData = true;
Table firstSheet = document.getBlocks().getTable(0).get();
firstSheet.setProtection(tableProps, "password");