- •Введение Она носила усы, и считала себя тигрицей.
- •Объектно-ориентированное программирование
- •Обзор типов данных vba
- •Типы данных vba
- •Переменные
- •Константы
- •Математические функции
- •1.2. Редактор vba. Первое знакомство Запуск редактора vba
- •Создание простейших программ
- •1.3. Изменение порядка выполнения операторов Операторы и выражения
- •Арифметические операторы
- •Символы совпадения с образцом для оператора Like
- •Логические операторы
- •Изменение порядка выполнения операторов
- •Повторение действий: циклы
- •Глава 2 Объект UserForm
- •2.1. Свойства и методы объекта UserForm Свойства объекта UserForm
- •Задачи на закрепление материала
- •Глава 3 Массивы, процедуры, функции
- •3.1. Организация массивов Одномерные массивы
- •Двумерные массивы
- •3.2. Работа с различными типами данных Тип, определяемый пользователем
- •Перечисляемый тип
- •Приведение и преобразование типов
- •Функции преобразования типов
- •Операции со строками
- •Функции работы со строками
- •3.3. Процедуры и функции vba Описание процедур и функций vba
- •Объявление процедуры инициализации массива
- •Объявление функции, подсчитывающей сумму любого числа аргументов
- •Вызов подпрограмм и функций
- •Макросы
- •Редактирование программного кода макроса в редакторе Visual Basic
- •Задачи на закрепление материала
- •Глава 4 Создание vba-программ
- •4.1. Элемент управления ListBox
- •Задачи на закрепление материала
- •Дополнительные задания
- •4.2. Элементы управления ComboBox, OptionButton и Frame Поле со списком
- •Переключатель и рамка
- •Задачи на закрепление материала
- •4.3. Элементы управления MultiPage, ScrollBar, SpinButton Коллекция Controls
- •Набор страниц MultiPage
- •Значения свойства TabOrientation
- •Полоса прокрутки ScrollBar
- •Счетчик SpinButton
- •4.4. Объект DataObject Описание объекта DataObject
- •Перемещение объектов. Реализация технологии DragAndDrop
- •Свойства объекта Word.Application
- •Работа с документами и класс Document
- •События объекта Document
- •Документ и его части
- •Объекты Range и Selection
- •Работа с текстом
- •5.2. Форматирование документа Работа с текстом(продолжение)
- •Создание кнопки или панели в Word
- •Задачи на закрепление материала
- •Заявление
- •При поездке на дачу, находящуюся на расстоянии 55 км, при цене бензина за литр 18,50 руб., потребление бензина составит 101,75 руб.
- •Отчет о доходе
- •Глава 6 Автоматизация стандартных документов
- •6.1. Встроенные диалоговые окна Диалоговые окна
- •Значения аргумента кнопки процедуры MsgBox
- •Значения аргумента кнопки процедуры MsgBox
- •Задачи на закрепление материала
- •6.2. Создание и автоматическое заполнение бланков стандартных документов Создание vba-программ
- •Задача на закрепление материала
- •Свойства объекта Range
- •Методы объекта Range
- •Методы объекта Range, использующие команды Excel
- •Округление чисел
- •Приведение данных
- •Создание vba-программ
- •Использование методов AutoFill при заполнении таблиц
- •7.2. Использование возможностей vba при непосредственных расчетах Создание vba-программ
- •Отклонение фактического уровня издержек обращения от плана за месяц _________________ 20__ г.
- •Задачи на закрепление материала
- •7.3. Финансовые функции Расчет амортизации
- •Общие параметры функций для расчетов амортизации
- •Создание vba-программы
- •Задача на закрепление материала
- •Глава 8 Построение диаграмм средстами vba
- •8.1. Построение гладких диаграмм Диаграммы в Excel
- •Создание vba-программы
- •8.2. Построение круговых диаграмм и гистограмм Создание vba-программ
- •Глава 9 Базы данных в Excel
- •9.1. Заполнение базы данных Элементы управления
- •Создание vba-программы
- •Задача на закрепление материала
- •9.2. Конструирование пользовательского интерфейса Создание vba-программы
- •Конструирование интерфейса. Презентация
- •Задача на закрепление материала
- •Глава 10 Создание собственного головного меню
- •Создание меню с помощью vba
- •Фрагмент таблицы идентификаторов встроенных команд меню
- •Литература
Создание простейших программ
Пример 1. Создать программу, которая работает с глобальными переменными, рассчитывая выражение:
Результат выдается в диалоговое окно Msgbox. Технология выполнения 1. Активизируйте приложение Word, создайте (сохраните) новый документ под именем Операции. 2. Выйдите в редактор VBA (Alt+F11). 3. Правой кнопкой мыши выделите Project(Document),где Document – название созданного документа, например Операции,и выберите команду Insert + Module(рис. 2). Если же имеется папка Modules, то добавьте в нее (рис. 6).
Рис. 2.Добавление нового модуля в папку Project 4. Дважды щелкните по классу Module1(рис. 3). В результате в правой части редактора VBA активизируется модуль (появится курсор), в котором можно прописывать все создаваемые программы, причем при вводе заготовки создаваемого модуля (слово Sub) и его имени ( list1– от листинг, можно вписать любое имя) появляется окончание данного модуля End Sub.
Рис. 3.Создание модуля List1 При объявлении глобальных переменных (согласно условию задачи) необходимо поставить курсор перед словом Sub, нажать Enter и вписать необходимые переменные, обращая внимание на раскрывающийся список (рис. 4).
Рис. 4.Создание переменных 4. Напишите следующую программу.
Dim a As Double Dim b, c, d As Double Dim k As String Const Pi As Double = 3.14 Sub list1() a = 5 b = 25.6 c = Sin(a ^ 2) + Cos(b) + Pi d = Sqr(c) MsgBox (d) End Sub
5. Запустите программу на выполнение, предварительно ее откомпилировав (проверив синтаксические ошибки). Для компиляции проекта выполните команду меню: Debug + Compile Project. Если ошибок нет, запустите приложение при помощи кнопки
Запуск панели инструментов или клавиши F5. Если все действия выполнены верно, то на экране появится диалоговое окно Msgbox с итоговым сообщением (рис. 5).
Рис. 5.Итоговый результат расчетов примера 1 Пример 2. Создать программу, которая производит сложение строковых переменных и результат выводит в диалоговое окно msgbox. Технология выполнения 1. В том же документе Операциивыделите правой кнопкой мыши папку Module sи выполните команду: Insert + Module(рис. 6).
Рис. 6.Добавление нового модуля 2. В результате появится новый модуль, где можно создать новую программу (модуль). Пропишите следующий код.
Dim a, b, c As String Sub list2() a = «Привет!» b = « Пока не сложно?» c = a + b MsgBox (c) End Sub
В данном примере переменным a и b присваиваются строковые значения (в кавычках!), после чего происходит сложение строк. Результат показан на рис. 7.
Рис. 7.Результат примера 2 3. Прокомпилируйте программу и запустите ее на выполнение. Примечание. Если в одном документе находятся несколько модулей, то при запуске программ может появляться диалоговое окно выбора макроса (модуля), в котором необходимо выбрать макрос, выделить его и нажать кнопку «Run» (рис. 8).
Рис. 8.Выбор макроса на выполнение