Microsoft Excel

трюкиприёмырешения

Основы Excel
30.03.2013 3618

Как ограничить полезную площадь в листах таблиц Excel

Вы никогда не хотели оставить некоторые ячейки доступными для изменения, тогда как весь рабочий лист будет защищен? Например, настроить лист так, чтобы можно было активизировать или изменять только ячейки из определенного диапазона. Решить данную задачу можно двумя способами: с помощью свойства ScrollArea и с использованием защиты листа.

Установка свойства ScrollArea

Свойство ScrollArea определяет видимый диапазон рабочего листа. Чтобы ограничить полезную площадь листа до определенного диапазона, выполните следующие действия.

  1. Откройте вкладку Разработчик. По умолчанию она не отображается, поэтому выберите команду Файл ► Параметры, затем в открывшемся диалоговом окне Параметры Excel перейдите к разделу Настройка ленты и установите флажок Разработчик в списке справа.
  2. Выполните команду Разработчик ► Элементы управления ► Свойства для отображения окна Properties (рис. 24.1).
  3. В поле ScrollArea окна Properties введите диапазон адресов и нажмите Enter. Вы не можете указать диапазон с помощью мыши — придется ввести его адрес
    вручную.
Рис. 24.1. Используйте окно Properties, чтобы установить область прокрутки для листа

Рис. 24.1. Используйте окно Properties, чтобы установить область прокрутки для листа

После выполнения этих действий вы не сможете активизировать какую бы то ни было ячейку за пределами указанного диапазона. Кроме того, некоторые команды больше не будут работать. Например, вы не сможете выбрать строки и столбцы целиком. Заметьте, что область прокрутки ограничивается одним непрерывным диапазоном ячеек.

Главный недостаток данного способа заключается в том, что свойство ScrollArea применяется на определенное время. Другими словами, после того как вы сохраните файл и закроете его, свойство ScrollArea перестанет действовать, и когда вы снова откроете файл, то сможете выбирать любую нужную вам ячейку. Одно из решений данной проблемы заключается в написании простого макроса VBA, который выполняется тогда, когда книга открыта. Для добавления макроса такого типа выполните следующие действия.

  1. Сверните окно книги нажатием Ctrl+F5.
  2. Щелкните правой кнопкой мыши на строке заголовка книги и в контекстном меню выберите команду Исходный текст. Это действие отобразит модуль кода Эта Книга для книги.
  3. Введите следующий код VBA в модуль кода Эта Книга (корректируя имя листа и диапазон адресов):
    1
    2
    3
    
    Private Sub Workbook_Open()
    	Worksheets("Лист1").ScrollArea = "C6:F13"
    End Sub
  4. Нажмите Alt+F11, чтобы вернуться в Excel.
  5. Сохраните книгу, закройте ее и откройте снова.

Если книга имеет расширение XLSX, необходимо сохранить ее как поддерживающую макросы (с расширением XLSM).

При открытии книги процедура Workbook_Open выполняется автоматически и свойство ScrollArea действует постоянно. Но, применяя данный метод, вы не сможете полностью ограничить доступ пользователей к частям книги. Так, продвинутый пользователь может открыть окно Properties и удалить содержимое поля ScrollArea или отключить макросы в открытой книге. Кроме того, чтобы отключить выполнение макроса Workbook_Open, достаточно нажать Shift при открытии файла.

Использование защиты листа

Второй метод ограничения полезной площади листа опирается на разблокирование ячеек и защиту книги.

  1. Выделите все ячейки, которые должны остаться незаблокированными. Это могут быть отдельные ячейки или любое количество диапазонов.
  2. Нажмите Ctrl+1. В появившемся диалоговом окне Формат ячеек перейдите на вкладку Защита и снимите флажок Защищаемая ячейка.
  3. Затем выберите команду Рецензирование ► Изменения ► Защитить лист и в открывшемся диалоговом окне Защита листа снимите флажок Выделение заблокированных ячеек (рис. 24.2).
  4. Если требуется, укажите пароль, который нужно ввести, чтобы снять защиту с рабочего листа, и нажмите ОК.
Рис. 24.2. Используйте диалоговое окно Защита листа, чтобы пользователь не мог выделять заблокированные ячейки

Рис. 24.2. Используйте диалоговое окно Защита листа, чтобы пользователь не мог выделять заблокированные ячейки

После выполнения этих шагов только разблокированные ячейки (выделенные на шаге 1) будут доступны пользователям.

Пароли рабочего листа вовсе не гарантируют полную безопасность. На самом деле взлом таких паролей — достаточно обычное дело. Таким образом, функция защиты листа используется больше для удобства, чем для обеспечения безопасности.

Top