Создание мастеров с помощью кода VBA

Рубрика: 7. Полезняшки Excel

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). Во многих приложениях для предоставления пользователям пошаговых инструкций по выполнению определенных задач используются специальные мастера, например, мастер импорта текстовых файлов Excel.[1] Мастер — это последовательность диалоговых окон, которые предоставляют пользователю информацию и запрашивают у него необходимые сведения. Часто выбор пользователя в первых диалоговых окнах влияет на содержимое последующих окон. Как правило, пользователю предоставляется возможность свободно перемещаться вперед и назад по последовательности диалоговых окон. Кроме того, он может щелкнуть на кнопке Готово, чтобы использовать значения, принятые по умолчанию.

Рис. 1. Состоящий из четырех этапов мастер, использующий элемент управления MultiРаgе; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

Читать полностью

Отображение индикатора текущего состояния с помощью VBA

Рубрика: 7. Полезняшки Excel

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). В настоящей заметке показано использование индикатора текущего состояния – графического «измерителя», который отображает текущее состояние выполняемой задачи, например, долго работающего макроса.[1]

Рис. 1. В окне UserForm отображается ход выполнения макроса

Читать полностью

Немодальные диалоговые окна

Рубрика: 7. Полезняшки Excel

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). Далее привел целый ряд практически полезных примеров пользовательских диалоговых окон. Большинство диалоговых окон, о которых речь шла в этих заметках, модальные, т.е. их необходимо удалять с экрана, прежде чем приступать к работе с окном приложения, находящимся под этим окном. Некоторые же диалоговые окна являются немодальными. Это означает, что пользователь может продолжать работу в приложении, даже когда диалоговое окно отображено на экране.[1]

Рис. 1. Немодальное диалоговое окно остается видимым, даже если пользователь продолжает работать с электронной таблицей (см. также файл modeless userform1.xlsm)

Читать полностью

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

Рубрика: 7. Полезняшки Excel

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). Далее привел целый ряд практически полезных примеров пользовательских диалоговых окон. В настоящей заметке подробнее рассказывается об использовании элемента управления ListBox.[1]

Рис. 1. Установка свойства RowSource на этапе разработки

Читать полностью

Примеры пользовательских форм в Excel, построенных с помощью VBA

Рубрика: 7. Полезняшки Excel

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). В настоящем материале приводится целый ряд практически полезных примеров пользовательских диалоговых окон.[1]

Рис. 1. Меню на основе элементов управления CommandButton или ListBox

Читать полностью

Работа с пользовательскими формами в VBA

Рубрика: 7. Полезняшки Excel

В настоящей заметке рассматриваются методы создания пользовательских форм и работы с ними.[1] Пользовательские диалоговые окна создаются на основе технологии пользовательских форм, к которым можно получить доступ из редактора Visual Basic (VBE; подробнее см. Настройка среды Visual Basic Editor).

Рис. 1. Окно новой пустой формы UserForm

Читать полностью

Создание собственных диалоговых окон средствами VBA

Рубрика: 7. Полезняшки Excel

В этой заметке описываются методы создания пользовательских диалоговых окон, которые существенно расширяют стандартные возможности Excel. Диалоговые окна – это наиболее важный элемент пользовательского интерфейса в Windows. Они применяются практически в каждом приложении Windows, и большинство пользователей неплохо представляет, как они работают. Разработчики Excel создают пользовательские диалоговые окна с помощью пользовательских форм (UserForm). Кроме того, в VBA имеются средства, обеспечивающие создание типовых диалоговых окон.[1]

Рис. 1. Работа процедуры GetName

Читать полностью

Вызов функций Windows API из кода VBA

Рубрика: 7. Полезняшки Excel

Одна из интересных возможностей VBA — поддержка функций, которые хранятся в динамически подключаемых библиотеках (Dynamic Link Libraries – DLL). В заметке демонстрируются популярные функции Windows API.[1] Для простоты изложения представленные здесь объявления API-функций могут корректно выполняться только в среде Excel 2010 и более поздних версиях. В то же время, примеры файлов совместимы с предыдущими версиями Excel.

Рис. 1. Выбор файла для поиска приложения$ чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

Читать полностью

Функции рабочих листов Excel при программировании на VBA

Рубрика: 7. Полезняшки Excel

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

Рис. 1. Активная ячейка имеет полужирное начертание, выполненное с помощью условного форматирования

Читать полностью

Функции, используемые в процедурах VBA

Рубрика: 7. Полезняшки Excel

Настоящая заметка продолжает знакомство с VBA. В ней представлены некоторые «практичные» функции, которые могут использоваться в ваших приложениях либо помогут в создании аналогичных функций. Эти функции наиболее полезны, когда вызываются из другой процедуры VBA. Следовательно, они объявляются с ключевым словом Private и не отображаются в диалоговом окне Excel Мастер функций (подробнее см. Работа с процедурами VBA).[1]

Функция FileExists

Данная функция получает один аргумент (путь и имя файла) и возвращает ИСТИНА, если файл существует.

Читать полностью