Как сделать печатную форму в экселе

Обновлено: 04.07.2024

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

Мы с Вами уже выгружали данные по шаблону через клиент Access из базы MSSql 2008 в Word и Excel вот в этой статье — Выгрузка данных из Access в шаблон Word и Excel. Но сейчас допустим, у нас данные располагаются в базе, в клиенте которой нельзя или слишком трудоемко реализовать такую задачу, поэтому мы просто выгрузим необходимые данные в Excel и на основе таких данных по шаблону сформируем наши документы.

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

Напомню, что на данном сайте тема VBA Excel уже затрагивалась, например, в материале – Запрет доступа к листу Excel с помощью пароля

И так приступим!

Пишем макрос на VBA Excel по формированию документов

Примечание! Программировать будем в Excel 2010.

И для начала приведем исходные данные, т.е. сами данные и шаблон

Данные.

Скриншот 1

Шаблон.

Скриншот 2

Далее, нам необходимо присвоить имена полей для вставки, так более удобней к ним обращаться чем, например, по номеру ячейки.

Скриншот 3

Свои поля я назвал следующим образом:

  • ФИО – fio;
  • № — number;
  • Должность – dolgn;
  • Адрес проживания – addres;
  • Тел. № сотрудника – phone;
  • Комментарий – comment.

Код макроса на VBA Excel

Скриншот 4

Скриншот 5

После вкладка разработчик станет отображаться на ленте.

Скриншот 6

После у Вас откроется окно редактора кода, где собственно мы и будем писать свой код VBA. Ниже представлен код, я его как обычно подробно прокомментировал:

Теперь осталось выполнить этот макрос, для этого откройте вкладку разработчик->макросы->выполнить наш макрос:

Скриншот 7

и после выполнения у Вас в той же папке появится вот такие файлы

Скриншот 8

Вот с таким содержимым:

Скриншот 9

Для удобства можете на листе с данными создать кнопку и задать ей событие выполнить наш только что созданный макрос, и после чего простым нажатием выполнять этот макрос. Вот и все! Удачи!

Логотип Microsoft Excel

Вы использовали такие инструменты, как Microsoft Forms, Google Forms или даже Microsoft Word для создания форм. Но если вам удобнее всего использовать Excel, почему бы не использовать его для создания нужной формы? Вот как.

Включить вкладку разработчика в Excel

Показать вкладку разработчика в Excel

Когда параметры Excel закроются, вы должны увидеть вкладку Разработчик.

Создать форму в Excel

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

На вкладке Разработчик щелкните Вставить для элементов управления формы.

В качестве примера мы вставим раскрывающийся список с помощью элемента управления формы.

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

Щелкните значок поля со списком в элементах управления формы и нарисуйте поле.

Нарисуйте поле со списком

На вкладке Разработчик щелкните Свойства

Добавьте поле со списком Диапазон ввода

Тогда у вас будет красивый и аккуратный список для выбора.

Поле со списком в Excel

В качестве другого примера мы вставим пару флажков для Да и Нет. Щелкните значок флажка в элементах управления формы и нарисуйте первый флажок. Убедитесь, что размер был достаточно широким, чтобы разместить текст, который вы хотите поставить рядом с флажком.

Нарисуйте флажок

Отредактируйте свойства флажка

Затем мы следуем тому же процессу, чтобы создать следующий флажок. Теперь наша форма действительно обретает форму!

Флажки в Excel

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

Защитите свою форму

Если вы планируете поделиться формой в цифровом виде, вы можете защитить ее от нежелательных изменений текста и элементов управления.

На вкладке

Выберите элементы для защиты и нажмите ОК.

Ошибка защищенного листа в Excel

Чтобы получить дополнительную помощь по блокировке определенных ячеек для защиты их от редактирования, ознакомьтесь с нашими инструкциями по блокировке ячеек в Excel.

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

Основным преимуществом UserForm является то, что вы можете сэкономить время, которое вы тратите на то, как и как информация должна быть заполнена.

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

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

  • Нажмите вкладку РАЗРАБОТЧИК на ленте.
  • Нажмите Visual Basic. Откроется окно Visual Basic для книги.
  • Нажмите Вставить,
  • Выберите UserForm из выпадающего списка.

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

Пользовательская форма появляется в правой части окна.

Появляется пользовательская форма

Понимание пользовательской формы

Разверните окно UserForm.xlsx — UserForm1.

Понимание UserForm

  • Измените заголовок UserForm на Project Report — Daily в окне свойств.
  • Измените имя пользовательской формы на ProjectReport.

Отчет о проекте

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

Элементы управления в панели инструментов

Пользовательская форма будет иметь разные компоненты. Когда вы нажимаете на любой из компонентов, вам либо будут предоставлены инструкции о том, что и как должна быть предоставлена ​​информация, либо вам будут предоставлены варианты (варианты) для выбора. Все это обеспечивается с помощью элементов управления ActiveX в панели инструментов пользовательской формы.

Excel предоставляет два типа элементов управления — элементы управления формы и элементы управления ActiveX. Вы должны понимать разницу между этими двумя типами элементов управления.

Элементы управления формой

Элементы управления формой — это оригинальные элементы управления Excel, которые совместимы с более ранними версиями Excel, начиная с Excel версии 5.0. Элементы управления формой также предназначены для использования на листах макроса XLM.

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

Элементы управления ActiveX

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

У вас есть следующие элементы управления ActiveX в UserForm ToolBox —

  • Указатель
  • этикетка
  • Текстовое окно
  • Поле со списком
  • ListBox
  • CheckBox
  • OptionButton
  • Рамка
  • Кнопка-переключатель
  • CommandButton
  • TabStrip
  • MultiPage
  • Полоса прокрутки
  • в полях ввода
  • Образ

В следующих нескольких разделах вы поймете эти элементы управления и MsgBox. Затем вы сможете выбрать, какой из этих элементов управления требуется для разработки пользовательской формы.

этикетка

Вы можете использовать ярлыки для идентификации, отображая описательный текст, такой как заголовки, подписи и / или краткие инструкции.

этикетка

Текстовое окно

Вы можете использовать TextBox в виде прямоугольника для ввода, просмотра или редактирования текста. Вы также можете использовать TextBox в качестве статического текстового поля, которое представляет информацию только для чтения.

Текстовое окно

Список

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

  • Вставьте ListBox в пользовательскую форму.
  • Нажмите на список.
  • Введите ProjectCodes для Name в окне свойств ListBox.

Есть три типа списков —

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

Список выбора множественного выбора — Список списка множественного выбора включает либо один выбор, либо смежные (смежные) варианты.

Поле со списком расширенного выбора — Поле со списком расширенного выбора позволяет выбрать один, непрерывный и несмежный (или несвязанный) выбор.

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

Список выбора множественного выбора — Список списка множественного выбора включает либо один выбор, либо смежные (смежные) варианты.

Поле со списком расширенного выбора — Поле со списком расширенного выбора позволяет выбрать один, непрерывный и несмежный (или несвязанный) выбор.

Вы можете выбрать один из этих типов списков в окне свойств.

ListBox

  • Щелкните правой кнопкой мыши на пользовательской форме.
  • Выберите View Code из выпадающего списка. Откроется окно кода UserForm.
  • Нажмите Инициализировать в правом верхнем углу окна кода.
  • Введите следующее в Private Sub UserForm_Initialize ().

инициализировать

Выберите Run

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

Поле со списком

Вы можете использовать ComboBox, который объединяет текстовое поле со списком для создания выпадающего списка. Поле со списком является более компактным, чем поле со списком, но требует, чтобы пользователь щелкнул стрелку вниз, чтобы отобразить список элементов. Используйте поле со списком, чтобы выбрать только один элемент из списка.

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

Создать форму ввода данных

Чтобы создать форму ввода, вам необходимо сначала создать заголовки формы.

1. Включите рабочий лист и введите заголовки формы в ячейки по мере необходимости. Смотрите скриншот:

doc-data-entry-1

2. Затем выберите эти заголовки и нажмите Вставить > Настольные, то в Создать таблицу диалог, проверьте В моей таблице есть заголовки, и нажмите OK кнопка. Смотрите скриншот:

doc-data-entry-2

док-стрелка

doc-data-entry-3

3. Затем нажмите Файл > Доступные опции (или Кнопка управления > Параметры Excel), чтобы открыть Параметры Excel диалоговое окно и щелкните Настроить ленту вкладку (или Настройки tab), затем выберите Все команды из Выберите команды из список, затем выберите Форма в длинном списке. Смотрите скриншот:

doc-data-entry-4

Внимание: Excel 2007 не поддерживает настройку ленты, но вы можете добавить Форма команду в Панель быстрого доступа нажав на Добавить кнопку, а затем перейдите к шагу 7.

doc-data-entry-5

4. Затем нажмите Новая вкладка добавить новую вкладку в Основные вкладки список. Смотрите скриншот:

doc-data-entry-6

5. Нажмите Новая группа (пользовательская)и нажмите Переименовывать чтобы переименовать его во всплывающем диалоговом окне. Смотрите скриншот:

doc-data-entry-7

6. Нажмите OK закрыть Переименовывать диалога, а затем нажмите Добавить добавить Форма команду Форма заявки группа. Смотрите скриншот:

doc-data-entry-8

7. Нажмите OK закрывать Параметры Excel диалог. Затем перейдите в Новая вкладкаи нажмите Форма. Смотрите скриншот:

doc-data-entry-9

Внимание: Если Форма команда добавлена ​​в Панель быстрого доступа, вы можете найти его над лентой. См. Снимок экрана ниже:

doc-data-entry-10

8. Затем появится диалоговое окно и введите информацию в текстовые поля. Смотрите скриншот:

doc-data-entry-11

Наконечник:

Если вы хотите добавить новые данные, нажмите Создать, и если вы хотите переписать информацию, нажмите Восстановить, если вы хотите завершить ввод данных, нажмите Закрыть.

И вы можете видеть, что информация, которую вы вводите в диалоговом окне, будет добавлена ​​в таблицу.

Читайте также: