Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Автоматизация процесса создания офисных документов. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
3. Создать макрос в MS Office Word 2007, меняющий местами символы,
прилегающие к курсору. Например, макрос должен преобразовать слово «елси» при установке курсора в середине слова и его запуске в слово «если». Макрос создать c помощью сочетаний клавиш «Ctrl+С».
4. Создать макрос в MS Office Word 2007, устанавливающий параметры страницы текста. Поля: Верхнее: 2 см., Левое: 3 см., Нижнее: 2 см., Правое: 1 см. Макрос создать c помощью сочетаний клавиш «Ctrl+K».
5. Создать макрос в MS Office Excel 2007 с помощью сочетания клавиш «Ctrl + w», позволяющий устанавливать формат ячеек «Числовой» с числом де­сятичных знаков: 3.
6. Создать макрос в MS Office Excel 2007 с помощью сочетания клавиш «Ctrl + r», позволяющий выбирать среднегеометрическое число из ячеек А1:А5 и записывать его в ячейку Е1.
7. Создать макрос в MS Office Excel 2007 с помощью сочетания клавиш «Ctrl + с», позволяющий вычислять в ячейках B1 и B2 тригонометрические
функции Sin A1 и Cos A2, аргументы которых записаны соответственно в ячей­ки А1 и А2.
3. Средства редактора VBA для разработки проекта
3.1 Интегрированная среда для разработки программ Visual Basic
Написание и отладка компьютерных программ для автоматизации про­цесса создания офисных документов производится в интегрированной среде разработки программ Visual Basic, входящей в состав системы MS Office. Наличие такой интегрированной среды, которую не надо устанавливать пред­варительно на компьютер, в отличие, например, от интегрированной среды раз­работки Visual Studio, является ее существенным преимуществом. Кроме того, использование этой среды позволяет пользователям при решении практических задач, связанных с созданием офисных документов, формировать и развивать алгоритмическое мышление.
Все программные компоненты, включая макросы, связанные с документом, образуют проект VBA. При создании проекта используется один из трех методов:
– запись макроса при помощи макрорекордера, с последующим его ре­дактированием;
создание макроса в редакторе VBA,
создание проекта в редакторе VBA.
21
Для создания больших проектов более подходит третий способ – способ непосредственного ввода в окно редактора VBA кода процедуры без предвари­тельной разработки макроса [5]. Для этого надо запустить из основного прило­жения, в котором вы работаете, редактор VBA с помощью выбора соответ­ствующей команды или нажатия клавиш на клавиатуре компьютера. Важно здесь отметить, что проект всегда связан с конкретным шаблоном документа, следовательно, для просмотра проекта необходимо открыть нужный документ.
Чтобы получить доступ к процедурам и функциям проекта, например в MS Office Excel 2007, следует войти в интегрированную среду разработки, в частности, в редактор VBA, для чего достаточно выполнить команду: лента Разработчик и далее нажать кнопку Visual Basic или нажать на клавиши
Alt+F11.
3.2 Основные средства редактора VBA
Окно редактора VBA, как видно из рисунка 3.1, состоит из строки верх­него меню, стандартной панели инструментов и двух основных частей, распо­ложенных ниже. Левая часть представляет собой окно проекта и окно свойств, правая часть – окно модуля.
Рис. 3.1. Окно редактора VBA
Строка верхнего меню состоит из ряда меню, которые используются при создании программ. Среди этих меню есть стандартные, присущие многим окнам Windows: File (Файл), Edit (Правка), View (Вид), Format (Формат), Tools
(Сервис), Help (Помощь) и др. Есть также меню, при помощи которых
22
пользователь может создавать, запускать и отлаживать программы: Insert (Вставка), Run (Запуск), Debug (Отладка) и др.
Ниже строки верхнего меню находится стандартная панель инструментов среды VBА, которая является основной панелью. С ее помощью можно выполнять широкий круг действий, активизируя соответствующие кнопки панели.
Ниже стандартной панели инструментов находятся окна: окно проекта и окно свойств, занимающие левую часть общего окна, и окно модуля, занимающее правую часть общего окна. Эти окна можно перемещать по экрану компьютера для удобства работы пользователя.
Окно проекта Project – VBAProject (рисунок 3.1) включает в себя все эле­менты проекта VBA. Они показаны в виде иерархической структуры и вклю­чают в себя все формы, модули кода, объекты основного приложения, напри­мер, листы, документы, шаблоны, базы данных, презентации. Такое представ­ление облегчает их просмотр и выбор. Окно проекта можно модифицировать, как любое окно в Windows. Выбрать объект для редактирования можно двой­ным щелчком мыши на названии объекта или выполнением команды Програм­ма или Объект из меню Вид.
В окне свойств (Properties) отображаются свойства только текущего объ­екта. С этим окном также можно производить все действия, что и с окном про­екта. Когда в окне проекта выбирается объект, в окне свойств отображаются все его свойства. Значения свойств можно изменять.
Окно модуля (Module) используется при написании любой программы VBA. В это окно записывается код процедур и макросов. Может быть несколь­ко окон модулей на один проект. Количеством одновременно отображаемых в окне модуля процедур можно управлять с помощью кнопки Представление полного модуля, которая включает режим просмотра всего модуля, когда выво­дятся все процедуры модуля с разделительной линией между ними, и кнопки Представление процедуры, когда отображается одна процедура в окне. Пере­мещаться между отдельными процедурами в окне модуля можно при помощи списка процедур, выбирая нужную процедуру по имени из раскрывающегося списка справа, а также с помощью клавиш со стрелками, как по документу.
Редактор Visual Basic включает в себя помимо развитой справочной си­стемы, вызываемой нажатием клавиши F1, еще и систему подсказки, которая помогает вводить имена объектов, свойств и методов без ошибок.
Например, после ввода имени команды и нажатия пробела появляется ок­но подсказки с указанием синтаксиса команды. В этом окне полужирным шрифтом выделяется имя параметра, который пользователь должен напечатать
23
в данный момент. Если в качестве параметра должна быть использована кон­станта, то система выводит список допустимых констант для этого параметра.
Также при наборе инструкций, использующих объекты, система подсказ­ки после набора точки, отделяющей свойство или метод от объекта, выводит список свойств и методов объекта. Кроме названия в списке еще указан значок – если это летящий конверт, то это метод, а если рука, то свойство.
Вставить в строку инструкции подходящий элемент после выбора можно с помощью клавиш Tab или Enter. Включить режимы вывода подсказок можно с помощью установки в окне Параметры флажков Краткие сведения и Список компонентов.
Иногда при разработке проекта требуется создать собственную форму для ввода каких-либо параметров в макрокоманду. Форма в VBA это диалоговое окно, представляющее собой прямоугольник с текстовыми полями, кнопками и другими элементами управления. Для создания этого вида пользовательского интерфейса в интегрированной среде VB имеется конструктор форм. Пользовательские формы позволяют реализовать визуальное программирование в VBA, в котором элемен­ты управления, такие как кнопки, текстовые поля и т.д. могут перетаскиваться и устанавливаться в нужное место формы, а не создаваться программным путем. Визуальное программирование повышает производительность разработки про­граммных средств путем устранения рутинных задач программирования.
В проект можно добавлять произвольное количество форм. Если в докумен­те существует несколько проектов, то можно использовать одну форму для всех.
Чтобы добавить пользовательскую форму в проект необходимо вывести панель инструментов формы на экран. Для этого нужно произвести следующие действия: в строке верхнего меню окна редактора MS Visual Basic выбрать ме­ню Insert (Вставка) и после клика мышью по этому меню откроется контекстное меню, в котором необходимо вырать опцию UseForm (Пользовательская форма) и произвести щелчок левой кнопкой мышью по ней. После выполнения этих действий в окне редактора MS Visual Basic появится пользовательская форма (UseForm1) и панель инструментов (ToolBox), представленные на рисунке 3.2. Далее на панели инструментов можно выбрать необходимый для решения кон­кретной задачи элемент управления (Controls) и перетащить его с помощью мыши на пользовательскую форму. Как видно из рисунка 3.2 на пользователь­скую форму, в данном случае, перенесено два элемента управления текстовое поле (TextBox1) и кнопка (CommandButton1). Если произвести щелчок мышью по одному из элементов управления, то в окне свойств появятся свойства этого элемента, которые может задать пользователь.
В таблице представлены элементы управления и их назначения. Если произвести двойной щелчок мышью по элементу управления, то откроется ок­но, представленное на рисунке 3.3. В этом окне пользователь может написать соответствующий код программы на языке программирования VBA.
24
Рис. 3.2. Окно редактора VBA
Название элемента управления Назначение
Надпись (Label) Отображает неизменяемый текст в формах, например,
заголовки
Текстовое поле (TextBox) Отображает данные и используется для ввода информа-
ции
Поле со списком (ComboBox) Используется для ввода значения или выбора его из
списка Список (ListBox) Выводит в форму список значений Флажок (CheckBox) Позволяет задать условие Переключатель (OptionButton) Служит для выбора одного из нескольких вариантов Выключатель (ToggleButton) Кнопка для отражения одного из двух состояний: вклю-
чено и выключено Рамка (Frame) Позволяет обозначить группу элементов управления Кнопка (CommandButton) Служит для запуска процедуры Набор вкладок (TabStrip) Представляет форму в виде набора вкладок Набор страниц (MultiPage) Представляет форму в виде набора страниц Полоса прокрутки (ScrollBar) Как и элемент Счетчик позволяет выбрать числовые зна-
чения, используя движок полосы прокрутки Счетчик (Spinner) Используется в качестве счетчика чего-либо Рисунок (Image) Отображает рисунок в форме
25
Рис. 3.3. Окно редактора VBA
В окне редактора VBA наряду с пользовательскими формами могут при­сутствовать и объекты. На рисунке 3.4 представлены объекты Excel, с которыми связаны или могут быть связаны программы и объект под названием Module1, созданный одновременно с макросом Test1. Правая часть окна редактора VBA представляет собой окно модуля. В этом окне виден программный код макроса Test1.
Для запуска макроса из окна редактора VBA нужно установить курсор в тело соответствующего программного кода, войти в верхнее меню Run и в рас­крывшемся меню активизировать команду Run Sub/UserForm.
Как видно из рисунка 3.4, код макроса Test1 весьма прост. Он состоит из одной инструкции:
Range("D2").Select
Здесь Range("D2") – объект программы Excel, а Select – метод этого объекта. Метод определяет некоторое действие, связанное с конкретным объектом. У каждого типа объектов имеются свои методы.
Объект Range определяет диапазон ячеек. Например, диапазон Range("B1:F10") состоит из 50 ячеек.
Если отредактировать только что записанный макрос следующим образом:
26
Sub Test1()
Range("B1:F10").Select
End Sub
и выполнить его, то результатом действия макроса будет выделение диапазона ячеек B1:F10.
Запустить макрос можно также, выполнив команду: лента Разработчик кнопка Макросы. На экране появится диалоговое окно Макрос, в котором нужно выбрать имя макроса Test1 и щелкнуть на кнопке Выполнить. Кроме того, для запуска макроса можно создать кнопку на панели инструментов или назначить сочетание клавиш.
Рис. 3.4. Окно редактора VBA
3.3 Задания для самопроверки
1. Опишите все опции верхнего меню окна редактора VBA.
2. С помощью меню Insert (Вставка) вставьте в окно редактора VBA окно процедуры (Procedure), окно пользовательской формы (UseForm), окно модуля (Module), окно класса модуля (Class Module), опишите их назначение.
3. Перенесите на пользовательскую форму (UseForm) все элементы
управления, представленные на панели инструментов (ToolBox), опишите их свойства.
27
4. Элементы языка программирования VBA
4.1 Возможности макрорекордера
Возможности макрорекордера по созданию макросов весьма ограничены. Знакомство с языком VBA, даже в самом минимальном объеме, позволяет редактировать коды макросов, создавать более совершенные средства автоматизации офисных документов. В последующих подразделах даются сведения о языке VBA.
4.2 Процедуры и функции
Процедура (или функция) – это некоторый фрагмент программы, выполняющий определенную задачу, который можно использовать неоднократно, вызывая его из различных точек программы. Функция отличается от процедуры тем, что она возвращает значение в вызвавшую ее программу. Для задания процедуры и функции в языке VBA используются соответственно следующие конструкции:
Sub имяПроцедуры ([списокПараметров])
. . . . . . . .
End Sub
Function имяФункции ([списокПараметров]) [As типЗна- чения]
. . . . . . . .
End Function
Квадратные скобки указывают на то, что заключенное в них содержимое не обязательно должно быть использовано при описании конкретной процедуры или функции. Для запуска процедуры нужно установить курсор в теле процедуры и нажать клавишу F5.
Довольно часто при написании программ в редакторе VBA операторы не умещаются на одной строке, в этом случае перенос части операторов на новую строку будет синтаксически верным на языке VBA, если выполнить следующие действия: пробел – подчеркивание ( _ ) – клавиша Enter.
Рассмотрим пример создания процедуры, для этого решим следующую задачу.
В приложении MS Office Excel 2007 разработать процедуру для вывода в окне сообщений (стандартном окне MS Windows) слова приветствия с помощью встроенной инструкции MsgBox.
Решение.
В MS Office Excel 2007 создадим рабочую книгу. В проект VBA этого до­кумента вставим стандартный модуль Module1, выполнив команду верхнего меню
28
Insert/Module. Затем выполним команду меню Insert/Procedure, в результате чего появится диалоговое окно Add Procedure, представленное на рисунке 4.1.
Рис. 4.1. Диалоговое окно добавления процедуры
В поле Name этого окна следует ввести имя процедуры и щелкнуть на кнопке ОК. В результате в окне модуля появится текст определения процедуры:
Public Sub Test1()
End Sub
Введем в тело процедуры инструкцию:
MsgBox "Привет!"
В результате в окне модуля (рисунок 4.2) появится простейшая процедура.
Рис. 4.2. Окно Модуля1
29
Если теперь в тело процедуры поместить курсор с помощью мыши и выполнить команду Run Sub, то появится стандартное окно сообщений со словом приветствия, представленное на рисунке 4.3.
Рис 4.3. Стандартное окно
MS Win
dows
4.3 Понятие о переменных. Константы
Переменные используются во время выполнения программы для временного хранения данных в оперативной памяти компьютера. Для задания переменной необходимо определить следующее:
1. Имя переменной для привязки ее к положению данных в оперативной
памяти компьютера.
2. Тип переменной, показывающий, какого рода информация хранится в ней.
3. Значение переменной, представляющее те данные, которыми опериру-
ет программа.
В процессе выполнения программы значение переменной может измениться. С любой переменной выполняются две основные операции: присваивается ей значение и получается ее значение.
Чтобы оперировать с переменной в программе, ей нужно присвоить некоторое имя. Хотя имя переменной выбирается произвольно, тем не менее, существуют некоторые ограничения.
1. Имя переменной должно начинаться только с буквы.
2. В оставшейся части имени можно использовать произвольную комби-
нацию букв, цифр и символов подчеркивания.
3. В именах переменных нельзя использовать пробелы, точки и другие
знаки препинания.
4. Имя должно быть уникальным внутри своей области действия.
5. Имя не должно содержать больше 255 символов.
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]