Типы форм которые можно создавать в excel
Перейти к содержимому

Типы форм которые можно создавать в excel

  • автор:

Создание форм для заполнения и печати в Excel

Вы можете создать форму в Excel, добавив в книгу элементы управления содержимым, такие как кнопки, флажки, списки и поля со списками. После этого другие пользователи смогут заполнить эту форму в приложении Excel и при желании распечатать ее.

Шаг 1. Отображение вкладки «Разработчик».

  1. В меню Excel выберите элемент Параметры.
  2. В разделе Разработка выберите Представление.
  3. В разделе Показывать на ленте установите флажок Вкладка «Разработчик».

Шаг 2. Добавление и форматирование элементов управления содержимым

  1. На вкладке Разработчик выберите элемент управления, который хотите добавить.
  2. На листе щелкните место, куда нужно вставить элемент управления.
  3. Чтобы задать свойства элемента управления, щелкните его, удерживая нажатой клавишу CONTROL, и выберите пункт Формат элемента управления.
  4. В окне Формат объекта задайте такие свойства элемента управления, как шрифт, выравнивание и цвет.
  5. Повторите действия 1–4 для каждого добавляемого элемента управления.

Шаг 3. Защита листа, содержащего форму

  1. В меню Сервис наведите указатель на пункт Защита и выберите команду Защитить лист.
  2. Выберите нужные параметры защиты.
  3. Сохраните и закройте книгу.

Совет: Чтобы продолжить редактирование после защиты формы, в меню Сервис наведите указатель на пункт Защита и выберите команду Снять защиту листа.

Шаг 4. Проверка формы (необязательно)

При необходимости вы можете проверить форму, прежде чем распространять ее.

  1. Защитите форму, как указано в описании шага 3.
  2. Откройте форму еще раз, заполните ее обычным способом и сохраните как копию.

Общие сведения о формах, элементах управления Form и элементах ActiveX на листе

Важно: Это средство недоступно в 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, а также когда требуется добавить элементы управления на листы диаграмм. Например, после добавления элемента управления «Поле списка» на лист и связывания его с ячейкой можно вернуть числовое значение для текущей позиции выбранного элемента в элементе управления . Затем это числовое значение можно использовать вместе с функцией INDEX для выбора различных элементов из списка.

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

Однако эти элементы управления нельзя добавить в UserForms, использовать для управления событиями или изменить для выполнения веб-скриптов на веб-страницах.

Обзор элементов управления формы

Название кнопки

Формы ввода данных в Microsoft Excel

Чтобы упростить ввод данных в таблицу в Excel, можно использовать специальные формы, которые помогут ускорить процесс заполнения диапазона таблицы информацией. В Excel есть встроенный инструмент, позволяющий заполнить аналогичный метод. Кроме того, пользователь может создать свою версию модуля, которая будет максимально адаптирована к его потребностям, используя для этого макрос. Давайте посмотрим на различные варианты использования этих полезных инструментов заливки в Excel.

Применение инструментов заполнения

Форма заполнения — это объект с полями, названия которых соответствуют названиям столбцов заполненной таблицы. Вам необходимо ввести данные в эти поля, и они будут немедленно добавлены в виде новой строки в диапазон таблицы. Форма может выступать в качестве отдельного интегрированного инструмента Excel или размещаться непосредственно на листе в виде своего диапазона, если она создана пользователем.

Теперь давайте посмотрим, как использовать эти два типа инструментов.

Способ 1: встроенный объект для ввода данных Excel

Прежде всего, давайте узнаем, как использовать встроенную форму ввода данных Excel.

  1. Следует отметить, что по умолчанию значок, запускающий его, скрыт и должен быть активирован. Для этого перейдите во вкладку «Файл», затем нажмите на пункт «Параметры».
  2. В открывшемся окне настроек Excel перейдите в раздел «Панель быстрого доступа». Большую часть окна занимает большая область настроек. Слева находятся инструменты, которые можно добавить на панель быстрого доступа, а справа — уже имеющиеся. В поле «Выбрать команды из» установите значение «Команды не на ленте». Кроме того, из списка команд, расположенных в алфавитном порядке, находим и выбираем позицию «Модуль…». Затем нажмите кнопку «Добавить».
  3. Далее нужный нам инструмент появится в правой части окна. Щелкните кнопку «ОК».
  4. Теперь этот инструмент находится в окне Excel на панели быстрого доступа, и мы можем его использовать. Он будет присутствовать при открытии книги из этого экземпляра Excel.
  5. Теперь, чтобы инструмент понимал, что именно ему нужно заполнить, нужно выложить заголовок таблицы и записать в него любые значения. Пусть наша матрица таблицы состоит из четырех столбцов, которые имеют названия «Название продукта», «Количество», «Цена» и «Количество». Введите эти имена в произвольный горизонтальный диапазон листа.
  6. Также, чтобы программа понимала, с какими диапазонами она будет работать, необходимо ввести любое значение в первую строку массива таблицы.
  7. Затем выберите любую ячейку шаблона таблицы и щелкните значок «Форма…» на панели быстрого доступа, которую мы активировали ранее.
  8. Затем откроется окно указанного инструмента. Как видите, у этого объекта есть поля, соответствующие названиям столбцов нашего массива таблиц. В этом случае первое поле уже заполнено значением, так как мы вручную ввели его в лист.
  9. Введите значения, которые мы сочтем необходимыми, в оставшиеся поля, затем нажмите кнопку «Добавить».
  10. В дальнейшем, как видим, введенные значения автоматически переносились в первую строку таблицы и в форме происходил переход к следующему блоку полей, который соответствует второй строке массива таблицы.
  11. Заполните панель инструментов значениями, которые мы хотим видеть во второй строке области таблицы, и снова нажмите кнопку «Добавить».
  12. Как видите, значения второй строки также были добавлены, и нам даже не пришлось переставлять курсор в самой таблице.
  13. Поэтому мы заполняем массив таблицы всеми значениями, которые хотим в него поместить.
  14. Также, при желании, вы можете перемещаться между ранее введенными значениями, используя кнопки «Назад» и «Далее» или вертикальную полосу прокрутки.
  15. При необходимости вы можете исправить любое значение в массиве таблиц, изменив его в форме. Чтобы изменения отображались на листе, после внесения их в соответствующий блок инструмента нажмите кнопку «Добавить».
  16. Как видите, изменение произошло сразу в области таблицы.
  17. Если нам нужно удалить строку, с помощью кнопок навигации или полосы прокрутки перейдите к соответствующему блоку полей в форме. Затем нажмите кнопку «Удалить» на панели инструментов.
  18. Появится диалоговое окно с предупреждением о том, что строка будет удалена. Если вы уверены в своих действиях, нажмите кнопку «ОК».
  19. Как видите, строка была извлечена из диапазона таблицы. После завершения заполнения и редактирования вы можете выйти из панели инструментов, нажав кнопку «Закрыть».
  20. Позже вы можете выполнить форматирование, чтобы сделать массив таблиц более наглядным.

Способ 2: создание пользовательской формы

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

  1. Как и в предыдущем способе, в первую очередь нужно создать на листе будущий заголовок таблицы. Он будет состоять из пяти ячеек с названиями: «Номер позиции», «Название продукта», «Количество», «Цена», «Количество».
  2. Затем нам нужно создать так называемую «умную» таблицу из нашего массива таблиц с возможностью автоматического добавления строк при заполнении соседних диапазонов или ячеек данными. Для этого выберите заголовок и, находясь на вкладке «Главная», нажмите кнопку «Форматировать как таблицу» на панели инструментов «Стили». Далее открывается список доступных стилей. Выбор любого из них никак не повлияет на функциональность, поэтому давайте просто выберем вариант, который мы считаем наиболее подходящим.
  3. Затем откроется небольшое окно для форматирования таблицы. Указывает диапазон, который мы выделили ранее, то есть диапазон заголовка. Как правило, в этом поле все заполняется правильно. Но мы должны поставить галочку рядом с опцией «Таблица с заголовками». Затем нажмите кнопку «ОК».
  4. Следовательно, наш диапазон отформатирован как интеллектуальная таблица, о чем также свидетельствует изменение отображения. Как вы можете видеть, помимо прочего, рядом с названием каждого заголовка столбца появились значки фильтров. Они должны быть отключены. Для этого выберите любую ячейку в умной таблице и перейдите на вкладку «Данные», где на ленте в панели инструментов «Сортировка и фильтр» щелкните значок «Фильтр». Есть еще один вариант отключения фильтра. В этом случае вам даже не нужно будет переключаться на другую вкладку, оставаясь на вкладке «Главная». После выбора ячейки в области таблицы на ленте в блоке настроек «Редактировать» щелкните значок «Сортировка и фильтр». В появившемся списке выберите пункт «Фильтр».
  5. Как видите, после этого действия значки фильтров исчезли из заголовка таблицы, как и требовалось.
  6. Итак, нам нужно создать саму форму ввода данных. Это тоже будет своего рода табличный массив, состоящий из двух столбцов. Имена строк этого объекта будут соответствовать именам столбцов основной таблицы. Исключение составляют столбцы «N p / p» и «Amount». Их не будет. Первый будет пронумерован с помощью макроса, а значения во втором будут рассчитаны путем применения формулы для умножения количества на цену. Второй столбец объекта ввода данных пока оставляем пустым. Значения для заполнения строк основного диапазона таблицы будут вставлены непосредственно позже.
  7. Далее создадим еще один журнальный столик. Он будет состоять из одного столбца и содержать список продуктов, который мы будем отображать во втором столбце основной таблицы. Для наглядности ячейку с названием этого списка («Список товаров») можно заполнить цветом.
  8. Затем мы выбираем первую пустую ячейку объекта ввода значения. Переходим во вкладку «Данные». Щелкните значок «Проверка данных», расположенный на ленте панели инструментов «Работа с данными».
  9. Открывается окно проверки входных данных. Щелкните по полю «Тип данных», где по умолчанию установлен параметр «Любое значение».
  10. Из открывшихся опций выберите пункт «Список».
  11. Как вы увидите позже, окно проверки введенных значений немного изменило свою конфигурацию. Появилось дополнительное поле «Источник». Щелкните значок справа от него левой кнопкой мыши.
  12. Затем окно проверки введенных значений сворачивается. С помощью курсора, удерживая левую кнопку мыши, выберите список данных, расположенный на листе в дополнительной табличной области «Список товаров». После этого снова нажмите на иконку справа от поля, где появился адрес выбранного диапазона.
  13. Возврат к окну проверки введенных значений. Как видите, координаты выбранного диапазона в нем уже отображаются в поле «Источник». Нажмите кнопку «ОК» внизу окна.
  14. Теперь значок треугольника появляется справа от выбранной пустой ячейки объекта ввода данных. При нажатии на нее открывается раскрывающийся список, состоящий из имен, извлеченных из массива таблицы «Список товаров». Теперь невозможно вставить произвольные данные в указанную ячейку, а только вы можете выбрать нужную позицию из представленного списка. Выбираем пункт в выпадающем списке.
  15. Как видите, выбранная статья сразу отобразилась в поле «Название продукта».
  16. Далее нам нужно будет назвать эти три ячейки формы ввода, в которые мы будем вводить данные. Выбираем первую ячейку, в которой в нашем случае уже задано название «Картошка». Затем перейдите в поле имени диапазона. Он расположен в левой части окна Excel на том же уровне, что и строка формул. Введите здесь произвольное имя. Это может быть любое название латинского алфавита, в котором нет пробелов, но все же лучше использовать имена, близкие к задачам, решаемым этим элементом. Поэтому первую ячейку, содержащую название продукта, мы будем называть «Имя». Пишем это имя в поле и нажимаем клавишу Enter на клавиатуре.
  17. Точно так же присваиваем имя «Volum» ячейке, в которую будем вводить количество товара».
  18. А ячейка с ценой — «Цена».
  19. Далее точно так же назовем весь диапазон предыдущих трех ячеек. Сначала мы выбираем, а затем даем имя в определенном поле. Пусть будет название «Диапазон».
  20. После последнего шага обязательно сохраните документ, чтобы присвоенные нами имена могли быть восприняты макросом, который мы создали в будущем. Для сохранения перейдите на вкладку «Файл» и нажмите «Сохранить как…».
  21. В открывшемся окне сохранения в поле «Тип файлов» выберите значение «Книга Excel с поддержкой макросов (.xlsm)». Далее нажмите кнопку «Сохранить».
  22. Поэтому вам следует включить макросы в своей версии Excel и включить вкладку «Разработчик», если вы еще этого не сделали. Дело в том, что обе эти функции по умолчанию в программе отключены, и их активацию нужно производить принудительно в окне настроек Excel.
  23. Как только вы это сделаете, перейдите на вкладку «Разработчик». Щелкните большой значок «Visual Basic», расположенный на ленте в панели инструментов «Код».
  24. Последний шаг запускает редактор макросов VBA. В области «Проект», расположенной в верхней левой части окна, выберите название листа, на котором расположены наши таблицы. В данном случае это «Лист 1».
  25. Затем перейдите в нижнюю левую область окна под названием «Свойства». Здесь можно найти настройки для выбранного листа. В поле «(Имя)» замените кириллическое имя («Sheet1») на имя, написанное латиницей. Вы можете дать любое имя, которое вам удобнее, главное, чтобы оно состояло только из латинских букв или цифр и никаких других знаков и пробелов не было. Именно под этим именем макрос будет работать. Пусть в нашем случае это имя будет «Продукт», хотя вы можете выбрать другое, отвечающее условиям, описанным выше. В поле «Имя» вы также можете изменить имя на более удобное. Но это необязательно. В этом случае разрешены пробелы, кириллица и любые другие символы. В отличие от предыдущего параметра, который задает имя листа для программы, этот параметр назначает имя листа, видимое пользователю на панели быстрого доступа. Как видите, после этого имя Листа 1 в области «Проект» автоматически изменится на то, которое мы только что установили в настройках.
  26. Итак, перейдем к центральной части окна. Здесь нам нужно написать сам код макроса. Если поле редактора белого кода в указанной области не появляется, как в нашем случае, нажмите функциональную клавишу F7, и оно появится.
  27. Теперь для нашего конкретного примера вам нужно написать следующий код в поле: Sub DataEntryForm()
    Затемнить следующий ряд самый длинный
    nextRow = Producty.Cells (Producty.Rows.Count, 2) .End (xlUp) .Offset (1, 0) .Row
    С Producty
    Если .Range («A2»). Value = «» And .Range («B2»). Value = «» Тогда
    следующая строка = следующая строка — 1
    Конец, если
    Range.Product («Название»). Копировать
    .Cells (nextRow, 2) .PasteSpecial Вставить: = xlPasteValues
    .Cells (nextRow, 3) .Value = Producty.Range («Объем»). Ценить
    .Cells (nextRow, 4) .Value = Producty.Range («Цена»). Ценить
    .Cells (nextRow, 5) .Value = Producty.Range («Volum») Значение * Producty.Range («Цена»). Ценить
    .Interval («A2»). Формула = «= ЕСЛИ (ISBLANK (B2),» «» «, COUNT ($ B $ 2: B2))»
    Если nextRow> 2, то
    Диапазон («A2»). Выбирать
    Selection.AutoFill Destination: = Range («A2: A» и следующая строка)
    Диапазон («A2: A» и следующая строка). Выберите
    Конец, если
    .Range («Диапазон»). ClearContents
    Конец с
    Конец подзаголовка Но этот код не универсален, то есть в неизменном виде подходит только для нашего случая. Если вы хотите адаптировать его к своим потребностям, его следует соответствующим образом изменить. Чтобы вы могли сделать это сами, давайте разберемся, из чего состоит этот код, что следует заменить, а что не следует менять. Итак, первая строка: Sub DataEntryForm() «DataEntryForm» — это имя самого макроса. Вы можете оставить его как есть или заменить любым другим, отвечающим общим правилам создания имен макросов (без пробелов, использовать только латинские буквы и т.д.). Смена имени ни на что не повлияет. Где бы в коде ни появлялось слово «Продукт», вы должны заменить его именем, которое вы ранее присвоили листу в поле «(Имя)» в области «Свойства» редактора макросов. Конечно, это нужно делать только в том случае, если вы назвали лист по-другому. Давайте теперь рассмотрим такую ​​строку: nextRow = Producty.Cells (Producty.Rows.Count, 2) .End (xlUp) .Offset (1, 0) .Row Число «2» в этой строке указывает на второй столбец листа. Именно в этом столбце находится столбец «Название продукта». Мы будем использовать его для подсчета количества строк. Поэтому, если в вашем случае аналогичный столбец имеет другой порядок подсчета, вам необходимо ввести соответствующий номер. В любом случае оставьте значение End (xlUp) .Offset (1, 0) .Row без изменений. Итак, рассмотрим строку Если .Range («A2»). Value = «» And .Range («B2»). Value = «» Тогда «A2» — координаты первой ячейки, в которой будет отображаться нумерация строк. «B2» — это координаты первой ячейки, которая будет использоваться для вывода данных («Название продукта»). Если они отличаются для вас, введите свои данные вместо этих координат. Перейти к линии Range.Product («Название»). Копировать В нем параметр «Имя» указывает имя, которое мы присвоили полю «Название продукта» в форме ввода. Онлайн .Cells (nextRow, 2) .PasteSpecial Вставить: = xlPasteValues
    .Cells (nextRow, 3) .Value = Producty.Range («Объем»). Ценить
    .Cells (nextRow, 4) .Value = Producty.Range («Цена»). Ценить
    .Cells (nextRow, 5) .Value = Producty.Range («Volum») Значение * Producty.Range («Цена»). Ценить имена «Объем» и «Цена» указывают на имена, которые мы присвоили полям «Количество» и «Цена» в той же регистрационной форме. В тех же строках, которые мы указали выше, числа «2», «3», «4», «5» обозначают номера столбцов на листе Excel, соответствующие столбцам «Название продукта», «Количество», «Цена» и «Сумма». Поэтому, если в вашем случае таблица перемещается, вам необходимо указать соответствующие номера столбцов. Если столбцов больше, то по аналогии нужно добавить в код его строки, если их меньше, то лишние убрать. В строке количество товара умножается на его цену: .Cells (nextRow, 5) .Value = Producty.Range («Volum») Значение * Producty.Range («Цена»). Ценить Результат, как мы видим из синтаксиса записи, будет отображаться в пятом столбце таблицы Excel. Это выражение выполняет автоматическую нумерацию строк: Если nextRow> 2, то
    Диапазон («A2»). Выбирать
    Selection.AutoFill Destination: = Range («A2: A» и следующая строка)
    Диапазон («A2: A» и следующая строка). Выберите
    Конец, если Все значения «А2» указывают адрес первой ячейки, в которой будет производиться нумерация, а координаты «А» — адрес всего столбца с нумерацией. Проверьте, где именно будет отображаться нумерация в вашей таблице, и при необходимости измените эти координаты в коде. В строке диапазон формы ввода данных очищается после переноса информации из нее в таблицу: .Range («Диапазон»). ClearContents Нетрудно догадаться, что («Диапазон») обозначает название диапазона, который мы ранее присвоили полям для ввода данных. Если вы дали им другое имя, его следует ввести в этой строке. Остальной код универсален и будет вводиться без изменений во всех случаях. После написания кода макроса в окне редактора вам необходимо щелкнуть значок сохранения как дискеты в левой части окна. Затем вы можете закрыть его, нажав кнопку закрытия стандартных окон в правом верхнем углу.
  28. Затем вернемся к листу Excel. Теперь нам нужно разместить кнопку, которая активирует созданный макрос. Для этого перейдите во вкладку «Разработчик». В блоке настроек «Элементы управления» на ленте нажмите кнопку «Вставить». Откроется список инструментов. В группе инструментов «Элементы управления формой» выберите самую первую — «Кнопку».
  29. Затем, удерживая левую кнопку мыши, мы обводим курсором область, в которой мы хотим разместить кнопку для запуска макроса, который будет передавать данные из формы в таблицу.
  30. После того, как область будет обведена, отпустите кнопку мыши. Затем автоматически запускается окно для назначения макроса объекту. Если в вашей книге используется несколько макросов, выберите из списка имя созданного нами выше. Мы называем это DataEntryForm. Но в данном случае макрос только один, поэтому выберите его и нажмите кнопку «ОК» внизу окна.
  31. Позже вы можете переименовать кнопку по своему усмотрению, просто выделив ее текущее имя. В нашем случае, например, логичнее было бы дать ему имя «Добавить». Переименуйте и щелкните мышью по любой свободной ячейке листа.
  32. Итак, наша форма полностью готова. Давайте проверим, как это работает. Введите необходимые значения в его поля и нажмите кнопку «Добавить».
  33. Как видите, значения перенесены в таблицу, строке автоматически присваивается номер, рассчитывается сумма, очищаются поля формы.
  34. Заполните форму еще раз и нажмите кнопку «Добавить».
  35. Как видите, вторая строка также была добавлена ​​в массив таблицы. Это означает, что инструмент работает.

В Excel есть два способа использования формы для заполнения данных: интегрированная и настраиваемая. Использование встроенной опции требует минимальных усилий со стороны пользователя. Его всегда можно запустить, добавив соответствующий значок на панель быстрого доступа. Вы должны создать собственный модуль самостоятельно, но если вы знакомы с кодом VBA, вы можете сделать этот инструмент наиболее гибким и подходящим для ваших нужд.

Формы ввода данных в Microsoft Excel

Для облегчения ввода данных в таблицу в Excel можно воспользоваться специальными формами, которые помогут ускорить процесс заполнения табличного диапазона информацией. В Экселе имеется встроенный инструмент позволяющий производить заполнение подобным методом. Также пользователь может создать собственный вариант формы, которая будет максимально адаптирована под его потребности, применив для этого макрос. Давайте рассмотрим различные варианты использования этих полезных инструментов заполнения в Excel.

Применение инструментов заполнения

Форма заполнения представляет собой объект с полями, наименования которых соответствуют названиям колонок столбцов заполняемой таблицы. В эти поля нужно вводить данные и они тут же будут добавляться новой строкой в табличный диапазон. Форма может выступать как в виде отдельного встроенного инструмента Excel, так и располагаться непосредственно на листе в виде его диапазона, если она создана самим пользователем.

Теперь давайте рассмотрим, как пользоваться этими двумя видами инструментов.

Способ 1: встроенный объект для ввода данных Excel

Прежде всего, давайте узнаем, как применять встроенную форму для ввода данных Excel.

    Нужно отметить, что по умолчанию значок, который её запускает, скрыт и его нужно активировать. Для этого переходим во вкладку «Файл», а затем щелкаем по пункту «Параметры».

Переход в параметры в Microsoft Excel

Добавление инструмента форма на панель быстрого доступа в Microsoft Excel

Инструмент форма добавлен на панель быстрого доступа в Microsoft Excel

Инструмент форма отображается на панеле быстрого доступа в Microsoft Excel

Шапка таблицы в Microsoft Excel

первое значение в таблице в Microsoft Excel

Запуск формы в Microsoft Excel

Форма открыта в Microsoft Excel

Ввод значений в форму в Microsoft Excel

Значения перенесы в таблицу в Microsoft Excel

Добавление второй строки в таблицу через форму в Microsoft Excel

Вторая строка заполнена в таблице в Microsoft Excel

Все значения в таблицу введены в Microsoft Excel

Навигация по форме в Microsoft Excel

Корректировка данных в форме в Microsoft Excel

Изменение произведено в таблице в Microsoft Excel

Удаление строки через форму в Microsoft Excel

Подтверждение удаления строки в Microsoft Excel

Закрытие формы в Microsoft Excel

Таблица отформатированв в Microsoft Excel

Способ 2: создание пользовательской формы

Кроме того, с помощью макроса и ряда других инструментов существует возможность создать собственную пользовательскую форму для заполнения табличной области. Она будет создаваться прямо на листе, и представлять собой её диапазон. С помощью данного инструмента пользователь сам сможет реализовать те возможности, которые считает нужными. По функционалу он практически ни в чем не будет уступать встроенному аналогу Excel, а кое в чем, возможно, превосходить его. Единственный недостаток состоит в том, что для каждого табличного массива придется составлять отдельную форму, а не применять один и тот же шаблон, как это возможно при использовании стандартного варианта.

    Как и в предыдущем способе, прежде всего, нужно составить шапку будущей таблицы на листе. Она будет состоять из пяти ячеек с именами: «№ п/п», «Наименование товара», «Количество», «Цена», «Сумма».

Шапка таблицы создана в Microsoft Excel

Создание умной таблицы в Microsoft Excel

Окошко форматирования таблицы в Microsoft Excel

Отключение фильтра через вкладку Данные в Microsoft Excel

Итак, наш диапазон отформатирован, как «умная» таблица, свидетельством чему является даже изменение визуального отображения. Как видим, помимо прочего, около каждого названия заголовка столбцов появились значки фильтрации. Их следует отключить. Для этого выделяем любую ячейку «умной» таблицы и переходим во вкладку «Данные». Там на ленте в блоке инструментов «Сортировка и фильтр» щелкаем по значку «Фильтр». Существует ещё один вариант отключения фильтра. При этом не нужно даже будет переходить на другую вкладку, оставаясь во вкладке «Главная». После выделения ячейки табличной области на ленте в блоке настроек «Редактирование» щелкаем по значку «Сортировка и фильтр». В появившемся списке выбираем позицию «Фильтр».

Отключение фильтра через вкладку Главная в Microsoft Excel

Фильтр снят в Microsoft Excel

Форма ввода данных на листе в Microsoft Excel

Таблица со списком товаров в Microsoft Excel

Переход к проверке данных в Microsoft Excel

Окно проверки вводимых значений в Microsoft Excel

Выбор списка в окне проверки вводимых значений в Microsoft Excel

Переход к выбору источника в окне проверки вводимых значений в Microsoft Excel

Адрес диапазона внесен в поле в Microsoft Excel

Закрытие окна проверки вводимых значений в Microsoft Excel

Список со значениями в Microsoft Excel

Выбранная позиция отобразилась в ячейке в Microsoft Excel

Наименование первой ячейки в Microsoft Excel

Наименование второй ячейки в Microsoft Excel

Наименование третьей ячейки в Microsoft Excel

присвоение наименования диапазону в Microsoft Excel

Сохранение книги в Microsoft Excel

Окно сохранения файла в Microsoft Excel

Переход в редактор макросов в Microsoft Excel

Редактор макросов в Microsoft Excel

Изменение наименования листа в редакторе макросов в Microsoft Excel

Поле в редкторе макросов отобразилось в Microsoft Excel

Теперь для конкретно нашего примера нужно записать в поле следующий код:
Sub DataEntryForm()
Dim nextRow As Long
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
With Producty
If .Range(«A2»).Value = «» And .Range(«B2»).Value = «» Then
nextRow = nextRow — 1
End If
Producty.Range(«Name»).Copy
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range(«Volum»).Value
.Cells(nextRow, 4).Value = Producty.Range(«Price»).Value
.Cells(nextRow, 5).Value = Producty.Range(«Volum»).Value * Producty.Range(«Price»).Value
.Range(«A2»).Formula = «=IF(ISBLANK(B2), «»»», COUNTA($B$2:B2))»
If nextRow > 2 Then
Range(«A2»).Select
Selection.AutoFill Destination:=Range(«A2:A» & nextRow)
Range(«A2:A» & nextRow).Select
End If
.Range(«Diapason»).ClearContents
End With
End Sub
Но этот код не универсальный, то есть, он в неизменном виде подходит только для нашего случая. Если вы хотите его приспособить под свои потребности, то его следует соответственно модифицировать. Чтобы вы смогли сделать это самостоятельно, давайте разберем, из чего данный код состоит, что в нем следует заменить, а что менять не нужно. Итак, первая строка: Sub DataEntryForm() «DataEntryForm» — это название самого макроса. Вы можете оставить его как есть, а можете заменить на любое другое, которое соответствует общим правилам создания наименований макросов (отсутствие пробелов, использование только букв латинского алфавита и т.д.). Изменение наименования ни на что не повлияет. Везде, где встречается в коде слово «Producty» вы должны его заменить на то наименование, которое ранее присвоили для своего листа в поле «(Name)» области «Properties» редактора макросов. Естественно, это нужно делать только в том случае, если вы назвали лист по-другому. Наименование для листа в Microsoft ExcelТеперь рассмотрим такую строку: nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row Цифра «2» в данной строчке означает второй столбец листа. Именно в этом столбце находится колонка «Наименование товара». По ней мы будем считать количество рядов. Поэтому, если в вашем случае аналогичный столбец имеет другой порядок по счету, то нужно ввести соответствующее число. Значение «End(xlUp).Offset(1, 0).Row» в любом случае оставляем без изменений. Второй столбец таблицы в Microsoft ExcelДалее рассмотрим строку If .Range(«A2»).Value = «» And .Range(«B2»).Value = «» Then «A2» — это координаты первой ячейки, в которой будет выводиться нумерация строк. «B2» — это координаты первой ячейки, по которой будет производиться вывод данных («Наименование товара»). Если они у вас отличаются, то введите вместо этих координат свои данные. Две первые ячейки таблицы с данными в Microsoft ExcelПереходим к строке Producty.Range(«Name»).Copy В ней параметр «Name» означат имя, которое мы присвоили полю «Наименование товара» в форме ввода. Имя поля наименования товара в форме ввода в Microsoft ExcelВ строках
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range(«Volum»).Value
.Cells(nextRow, 4).Value = Producty.Range(«Price»).Value
.Cells(nextRow, 5).Value = Producty.Range(«Volum»).Value * Producty.Range(«Price»).Value
наименования «Volum» и «Price» означают названия, которые мы присвоили полям «Количество» и «Цена» в той же форме ввода. Наименование полей количество и цена в Microsoft ExcelВ этих же строках, которые мы указали выше, цифры «2», «3», «4», «5» означают номера столбцов на листе Excel, соответствующих колонкам «Наименование товара», «Количество», «Цена» и «Сумма». Поэтому, если в вашем случае таблица сдвинута, то нужно указать соответствующие номера столбцов. Если столбцов больше, то по аналогии нужно добавить её строки в код, если меньше – то убрать лишние. Колонки в таблице в Microsoft ExcelВ строке производится умножение количества товара на его цену: .Cells(nextRow, 5).Value = Producty.Range(«Volum»).Value * Producty.Range(«Price»).Value Результат, как видим из синтаксиса записи, будет выводиться в пятый столбец листа Excel. Колонка для вывода суммы в Microsoft ExcelВ этом выражении выполняется автоматическая нумерация строк:
If nextRow > 2 Then
Range(«A2»).Select
Selection.AutoFill Destination:=Range(«A2:A» & nextRow)
Range(«A2:A» & nextRow).Select
End If
Все значения «A2» означают адрес первой ячейки, где будет производиться нумерация, а координаты « — адрес всего столбца с нумерацией. Проверьте, где именно будет выводиться нумерация в вашей таблице и измените данные координаты в коде, если это необходимо. Столбец с нумерацией в Microsoft ExcelВ строке производится очистка диапазона формы ввода данных после того, как информация из неё была перенесена в таблицу: .Range(«Diapason»).ClearContents Не трудно догадаться, что («Diapason») означает наименование того диапазона, который мы ранее присвоили полям для ввода данных. Если вы дали им другое наименование, то в этой строке должно быть вставлено именно оно. Наименование полей для ввода данных в Microsoft ExcelДальнейшая часть кода универсальна и во всех случаях будет вноситься без изменений. После того, как вы записали код макроса в окно редактора, следует нажать на значок сохранения в виде дискеты в левой части окна. Затем можно его закрывать, щелкнув по стандартной кнопке закрытия окон в правом верхнем углу.

Код в редакторе макросов в Microsoft Excel

Выбор элемента управления в Microsoft Excel

Указание границ кнопки в Microsoft Excel

Окно назначения макроса объекту в Microsoft Excel

Переименовывание кнопки в Microsoft Excel

После этого можно переименовать кнопку, как вы захотите, просто выделив её текущее название. В нашем случае, например, логично будет дать ей имя «Добавить». Переименовываем и кликаем мышкой по любой свободной ячейке листа.

Кнопка переименована в Microsoft Excel

Ввод данных в форму в Microsoft Excel

Значения первой строки внесены в таблицу в Microsoft Excel

Повторный ввод данных в форму в Microsoft Excel

Вторая строка добавлена в таблицу в Microsoft Excel

В Экселе существует два способа применения формы заполнения данными: встроенная и пользовательская. Применение встроенного варианта требует минимум усилий от пользователя. Его всегда можно запустить, добавив соответствующий значок на панель быстрого доступа. Пользовательскую форму нужно создавать самому, но если вы хорошо разбираетесь в коде VBA, то сможете сделать этот инструмент максимально гибким и подходящим под ваши нужды.

Максим Тютюшев Вам помогли мои советы?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *