Важно
Эта функция недоступна в Office на компьютерах с Windows RT. Хотите узнать, какую версию Office вы используете?
С помощью форм и множества элементов управления и объектов, которые можно добавить к ним, можно упростить ввод данных на листах и улучшить их внешний вид. Вы также можете делать это самостоятельно, и вам почти или совсем не потребуется код Microsoft Visual Basic для приложений (VBA).
Форма листа и шаблон Excel — это не одно и то же. Шаблон — это предварительно отформатированный файл, который служит отправной точкой для создания книги с требуемым оформлением. Форма содержит элементы управления, такие как поля и раскрывающиеся списки, упрощающие ввод и изменение данных для использующих ваш лист. Дополнительные сведения о шаблонах, которые можно скачать, см. в разделе "Шаблоны Excel".
Общие сведения о формах
Форма (в печатном виде или в Интернете) — это документ со стандартной структурой и форматом, которые упрощают сбор, упорядочение и редактирование информации.
- Печатные формы содержат инструкции, форматирование, наклейки и пустые места для записи или ввода данных. Для создания печатных форм можно использовать Excel и шаблоны Excel.
- Веб-формы имеют те же функции, что и печатные. Кроме того, онлайн-формы содержат элементы управления. Элементы управления — это объекты, которые отображают данные или упрощают пользователям ввод или изменение данных, выполнение действий или выбор. В целом, элементы управления упрощают работу с формой. Примерами часто используемых элементов управления являются списки, переключатели и кнопки. Элементы управления также могут запускать назначенные им макросы и реагировать на события, например щелчки мышью, путем выполнения кода Visual Basic для приложений (VBA).
В Excel можно использовать несколько способов для создания печатных и веб-форм.
Типы форм Excel
В Excel можно создавать формы нескольких типов: формы данных, листы с элементами управления формы и ActiveX, а также пользовательские формы VBA. Каждый из этих типов формы можно использовать по отдельности или сочетать с другими типами для создания нужного решения.
Форма данных
Форма данных позволяет удобно вводить или отображать одну полную строку данных в диапазоне или таблице без прокрутки по горизонтали. Использовать форму данных может быть проще, чем перемещаться между столбцами, которых слишком много для одновременного отображения на экране. Форму данных можно применять тогда, когда достаточно простой формы с текстовыми полями, в качестве подписей которых используются заголовки столбцов, и когда не требуются сложные или пользовательские возможности, например списки и счетчики.
Excel может автоматически создать встроенную форму данных для диапазона или таблицы. Такая форма представляет собой диалоговое окно, в котором все заголовки столбцов отображаются в виде подписей. Каждой подписи соответствует текстовое поле, в которое можно вводить данные для столбца (максимальное количество столбцов — 32). В форме данных можно вводить новые строки, находить строки, переходя, или (на основе содержимого ячеек) обновлять строки и удалять строки. Если ячейка содержит формулу, результат формулы отображается в форме данных, но изменить формулу с помощью формы данных невозможно.
Лист с формой и элементами ActiveX
Лист — это тип формы, позволяющий вводить и просматривать данные в сетке. В листах Excel уже встроено несколько функций, аналогичных элементам управления, например примечания и проверка данных. Ячейки напоминают текстовые поля, так как в них можно вводить и форматировать различными способами. Ячейки часто используются в качестве меток, а изменяя высоту и ширину ячеек, а также объединяя ячейки, можно настроить на лист отображение простой формы для ввода данных. Другие функции, похожие на элементы управления, такие как комментарии к ячейкам, гиперссылки, фоновые изображения, проверка данных, условное форматирование, встроенные диаграммы и автофильтр, могут придать листу вид расширенной формы.
Для дополнительной гибкости вы можете добавить элементы управления и другие графические объекты на полотно листа, а затем объединить и скоординировать их с ячейками листа. Например, элемент управления "список" можно использовать, чтобы облегчить пользователю выбор элементов из списка. Или можно использовать элемент управления кнопкой "Счетчик", чтобы облегчить пользователю ввод числа.
Элементы управления и объекты хранятся на полотне, и поэтому их можно отображать и просматривать одновременно со связанным текстом, не зависящим от границ строк и столбцов, без изменения макета сетки или таблицы данных на листе. В большинстве случаев многие из этих элементов управления можно также связать с ячейками на листе, а для их нормальной работы не требуется создавать код VBA. Можно задать свойства, определяющие, является ли элемент управления свободно перемещаемым или перемещается и изменяет размеры вместе с ячейкой. Например, может потребоваться, чтобы флажок перемещался вместе со связанной ячейкой при сортировке диапазона. С другой стороны, если нужно, чтобы список всегда отображался в одном и том же месте, нежелательно, чтобы он перемещался вместе с ячейкой.
В Excel поддерживаются два типа элементов управления: элементы управления форм и элементы ActiveX. В дополнение к этим наборам элементов управления можно добавлять объекты из средств рисования, таких как автофигуры, объекты WordArt, графические элементы SmartArt или текстовые поля.
В следующих разделах более подробно описываются элементы управления и средства рисования, а также работа с ними.
Элементы управления формы
Элементы управления формы появились в Excel раньше всего и поддерживаются в предыдущих выпусках Excel (начиная с версии 5.0). Их также можно использовать на листах макросов XLM.
Элементы управления формы используется, если необходимо легко ссылаться на данные ячеек и взаимодействовать с ними без использования кода VBA, а также добавлять элементы управления на листы диаграмм. Например, добавив элемент управления "список" на лист и связав его с ячейкой, можно вернуть числовое значение для текущей позиции выбранного элемента в элементе управления. Затем это числовое значение можно использовать в сочетании с функцией ИНДЕКС для выбора различных элементов из списка.
С помощью элементов управления формы можно также выполнять макросы. Можно назначить элементу управления существующий макрос либо создать или записать новый. Когда пользователь формы щелкает элемент управления, запускается макрос.
Однако эти элементы управления не могут быть добавлены в UserForms, использоваться для управления событиями или изменены для выполнения веб-скриптов на веб-страницах.
Обзор элементов управления формы
| Имя кнопки | Пример | Описание |
|---|---|---|
|
Метка |
|
|
Значок кнопки |
|
|
Кнопка |
|
|
Флажок |
|
|
Переключатель |
|
|
Список |
|
|
Поле со списком |
|
|
Полоса прокрутки |
|
|
Счетчик |
|
| Имя кнопки |
|---|
Текстовое поле![]() |
Список со списком — редактирование |
Выпадающее меню - Вниз Редактирование |
: диалоговое окно "Выполнить" |
Элементы ActiveX
Элементы ActiveX можно использовать на формах листа (без кода VBA или с ним), а также на пользовательских формах VBA. Мы рекомендуем применять их, если требуются более гибкие возможности, чем у элементов управления формы. Многочисленные свойства элементов ActiveX позволяют настраивать их внешний вид, поведение, шрифты и другие характеристики.
Можно также управлять событиями, которые происходят при взаимодействии с элементом ActiveX. Например, можно выполнять различные действия в зависимости от того, какой элемент выбирается из списка, или отправлять запрос базе данных для заполнения поля со списком элементами при нажатии кнопки. Можно также создавать макросы, которые реагируют на события, связанные с элементами ActiveX. При выборе элемента управления будет выполняться код VBA, обрабатывающий все назначенные ему события.
Кроме того, на компьютере расположено множество элементов ActiveX, установленных приложением Excel и другими программами, такими как Медиаплеер Windows.
Важно
Не все элементы ActiveX можно использовать непосредственно на листах; некоторые из них можно применять только к пользовательским формам Visual Basic для приложений (VBA). При попытке добавить такие элементы управления на лист в приложении Excel отображается сообщение "Вставка объекта неосуществима".
Тем не менее элементы ActiveX невозможно добавить на листы диаграмм (с помощью пользовательского интерфейса) или на листы макросов XLM. Кроме того, нельзя назначить макрос для запуска непосредственно из элемента ActiveX так же, как из элемента управления "Форма".
Обзор элементов ActiveX
| Имя кнопки | Пример | Описание |
|---|---|---|
|
Флажок |
|
|
Текстовое поле |
|
|
Кнопка |
|
|
Переключатель |
|
|
Список |
|
|
Поле со списком |
|
|
Выключатель |
|
|
Счетчик |
|
|
Полоса прокрутки |
|
|
Метка |
|
|
Изображение |
|
| Рамка |
|
|
|
Другие элементы |
Объекты средств рисования
Также может потребоваться включить в форму графические элементы SmartArt, фигуры, объекты WordArt и текстовые поля. Можно изменять размер и цвет таких объектов, поворачивать, отражать и объединять их, чтобы получать еще более сложные фигуры. При вводе текста непосредственно в фигуре или объекте текстового поля он становится частью этого объекта. При повороте или отражении объекта он также поворачивается или отражается. В отличие от элементов ActiveX, отдельным словам и знакам в объекте можно назначать различные атрибуты, например размер или начертание шрифта. Кроме того, объектам можно назначать макросы или гиперссылки. Можно даже связать текст в фигуре или надписи с ячейкой листа и динамически выводить обновленные значения.
Работа с элементами управления и объектами на листе
После добавления форм и элементов ActiveX на форму листа обычно их требуется настроить и упорядочить для создания привлекательной и понятной формы. При этом часто выполняются перечисленные ниже задачи.
- Управление отображением линий сетки при работе с элементами управления и отключение либо включение вывода линий сетки на готовой форме листа.
- Выбор или отмена выбора элементов управления с целью указания свойств или дополнительной настройки.
- Изменение текста элемента управления, например заголовка или подписи.
- Группировка, копирование, перемещение и выравнивание элементов управления для упорядочения макета формы листа.
- Изменение размера и форматирования элементов управления для достижения требуемого внешнего вида.
- Изменение положения или размера элемента управления относительно ячейки.
- Защита элементов управления и связанных ячеек в соответствии с собственными потребностями.
- Включение или отключение печати элементов управления вместе с формой листа.
- Удаление неиспользуемых элементов управления.
На фоне формы листа можно отобразить или скрыть линии сетки. Например, может потребоваться отключить линии сетки ячеек и затем применить ко всем ячейкам один и тот же цвет либо узор или даже использовать в качестве фона листа рисунок. Чтобы скрыть или отобразить линии сетки, на вкладке Вид в группе Показать снимите или установите флажок Сетка.
Определение типа элемента управления на листе
Поскольку существует три разных типа элементов управления и объектов, которые можно изменять уникальным образом, иногда невозможно точно определить тип элемента управления по его внешнему виду. Чтобы определить тип элемента управления (элемент управления формы или элемент ActiveX), щелкните его правой кнопкой мыши и просмотрите контекстное меню.
Если контекстное меню содержит команду Свойства, элемент управления является элементом ActiveX и сейчас используется режим конструктора.
Если контекстное меню содержит команду Назначить макрос, это элемент управления формы.
Совет
Чтобы отобразить правильное контекстное меню для элемента управления "Форма" поля группы, убедитесь, что выбран периметр, а не внутренняя часть поля группы.
Если контекстное меню содержит команду Изменить текст, это объект-рисунок.
Пользовательские формы VBA
Для обеспечения максимальной гибкости можно создавать пользовательские диалоговые окна UserForms, обычно содержащие один или несколько элементов ActiveX. Пользовательские формы вызываются из программного кода VBA, который создается в редакторе Visual Basic. Ниже приведены общие указания по созданию пользовательских форм.
Примечание
Элементы ActiveX отключены по соображениям безопасности и не работают в более новых версиях Excel.
- Вставьте пользовательскую форму в проект VBA книги. Чтобы получить доступ к VBAProject книги, сначала откройте редактор Visual Basic (нажмите клавиши ALT+F11), а затем в меню "Вставка " щелкните UserForm.
- Создайте процедуру для отображения пользовательской формы.
- Добавьте элементы ActiveX.
- Измените свойства элементов ActiveX.
- Создайте процедуры обработчика событий для элементов ActiveX.
Пользовательские формы также позволяют применять дополнительные функции форм. Например, можно программным образом добавить отдельный переключатель для каждой буквы алфавита или флажок для каждого элемента в крупном списке дат и чисел.
Перед созданием пользовательских форм рассмотрите возможность применения встроенных диалоговых окон, доступных в Excel. Они включают функции VBA InputBox и MsgBox, метод Excel InputBox, метод GetOpenFilename, метод GetSaveAsFilename и объект Dialogs объекта Application, который содержит все встроенные диалоговые окна Excel.
Дополнительные сведения см. в Центре разработчиков Microsoft Office Excel.
