- •Е. А. Сидорова, п. С. Челобанов основы программирования на vba омск 2011
- •1. Понятие и свойства алгоритма
- •1.1. Понятие алгоритма
- •1.2. Свойства и виды алгоритмов
- •1.3. Способы представления алгоритмов
- •2. Язык программирования vba
- •2.1. Языки программирования
- •2.2. Общие сведения о vba
- •2.3. Основные понятия языка программирования
- •2.4. Алфавит vba
- •2.5. Типы данных
- •2.6. Формы записи вещественных чисел в программе
- •2.7. Переменные
- •2.8. Константы
- •2.9. Встроенные функции
- •2.10. Выражения
- •2.11. Редактор Visual Basic
- •2.12. Правила записи и ввода программ на vba
- •2.13. Создание первой программы
- •3. Управление вводом и выводом данных
- •3.1. Оператор присваивания
- •3.2. Операторы ввода данных
- •3.3. Генерирование случайных чисел
- •3.4. Операторы вывода данных
- •4. Линейные вычислительные процессы
- •5. Разветвляющиеся вычислительные процессы
- •5.1. Алгоритм разветвляющегося процесса
- •5.2. Оператор условного перехода If
- •5.2.1. Однострочный (линейный) оператор If
- •If Условие Then Операторы_1 [ Else Операторы_2 ],
- •5.2.2. Блочная форма оператора If
- •5.3. Объединение условий с помощью логических операций
- •5.4. Оператор безусловного перехода GoTo
- •5.5. Оператор выбора Select Case
- •6. Символьные переменные
- •6.1. Общие понятия
- •6.2. Сравнение строк
- •6.3. Строковые функции
- •6.4. Оператор Mid
- •7. Введение в объектно-ориентированное программирование
- •7.1. Основные понятия
- •7.2. Создание пользовательского интерфейса
- •7.3. Установка свойств объектов и определение методов
- •7.4. Составление программного кода
- •7.5. Создание пользовательского приложения с использованием формы
- •7.5.1. Создание формы
- •7.5.2. Разработка программного кода
- •8. Циклические вычислительные процессы
- •8.1. Понятие цикла
- •8.2. Арифметический цикл
- •8.2.1. Цикл с разветвлением
- •8.2.2. Цикл со счетчиком. Вычисление максимума и минимума
- •8.2.3. Вложенные циклы
- •8.3. Вычисление сумм и произведений
- •8.4. Итерационные циклы
- •8.4.1. Операторы цикла Do … Loop
- •9. Модульное программирование.
- •9.1. Понятие процедуры
- •9.2. Параметры процедур – формальные и фактические
- •9.3. Разработка процедур-функций
- •9.4. Разработка процедур-подпрограмм
- •9.5. Срочный выход из процедур и циклов
- •10. Переменные с индексами. Одномерные массивы
- •10.1. Понятие массива
- •10.2. Ввод массива
- •10.2.1. Считывание массива с листа Excel
- •10.2.2. Заполнение массива случайными числами
- •10.3. Вывод массива
- •10.4. Решение задач с использованием массивов
- •644046, Г. Омск, пр. Маркса, 35
2. Язык программирования vba
2.1. Языки программирования
Языки программирования – это искусственные языки, предназначенные для записи алгоритмов. Они считаются языками высокого уровня по отношению к уровню машинных (внутренних) команд. ЭВМ оперирует командами в двоичном коде (машинные команды), поэтому программу, написанную на языке высокого уровня, необходимо перевести (транслировать) на язык машинных команд, «понятных» ЭВМ. Эту операцию выполняют обслуживающие программы-трансляторы (интерпретаторы и компиляторы).
Компиляторы транслируют весь текст программы, написанной на языке высокого уровня, в машинные коды в ходе одного непрерывного процесса. При этом создается полная программа в машинных кодах, которая в дальнейшем используется без участия компилятора.
Интерпретаторы построчно переводят программу, написанную на языке высокого уровня, в машинные коды, причем каждая строка тут же выполняется.
Преимущество компиляторов (для языков Фортран, Паскаль, Си) состоит в высокой скорости выполнения готовой программы. Интерпретаторы (для языков Basic, Logo) более удобны при откладке программ, так как реализуют диалоговый стиль разработки программ.
2.2. Общие сведения о vba
VBA (Visual Basic for Applications) – это диалект языка Visual Basic, расширяющий его возможности и предназначенный для работы с приложениями Microsoft Office и другими приложениями, в том числе и от третьих фирм.
В настоящее время VBA встроен в Word, Excel, Access, PowerPoint, Outlook, Visio, Project, а также более чем в 100 приложений других фирм, например, CorelDRAW, AutoCAD и т. п. VBA – самый удобный язык для работы с приложениями Office. Он изначально был ориентирован на пользователей, а не на профессиональных программистов, поэтому на нем можно создавать программы довольно быстро и легко. В VBA встроены мощные средства для облегчения работы пользователя: подсказки по объектам и синтаксису, макрорекордер, средства работы с текстом, графический интерфейс и др. В данном конспекте лекций язык VBA рассмотрен применительно к Microsoft Excel.
Создавать несложные программы на VBA можно, ничего не зная о программировании. Для этого служит режим автоматического создания макросов, реализуемый с помощью макрорекордера, но этот язык имеет ограниченные возможности: не умеет проверять значения, чтобы в зависимости от них выполнять какое-либо действие, не работает с циклами, не умеет перехватывать и обрабатывать ошибки и т. д. Программирование помогает решить эти проблемы и значительно повысить мощь и возможности макросов, позволяя создавать пользовательские меню, диалоговые окна, панели инструментов и др.
VBA считается объектно-ориентированным языком программирования.
2.3. Основные понятия языка программирования
Объект – это объединение данных с программным кодом, предназначенным для их обработки.
Объект представляет собой именованный элемент, имеющий
свойства, или характеристики, которые можно проверить или изменить;
методы, т. е. действия, которые можно выполнить над объектом;
события, т. е. возможные для объекта ситуации, на которые он может ответить заранее предопределенными действиями.
Оператор – это наименьшая способная выполняться единица VBA-кода. Оператор может объявлять или определять переменную или выполнять какое-либо действие в программе. Другими словами, оператор – это обобщенная инструкция, которая содержит всю информацию, необходимую для выполнения определенных действий. Операторы в общем случае состоят из ключевых слов, выражений и операндов.
Ключевые (зарезервированные) слова – это имена команд, операторов, процедур, функций.
Операнды – это данные, используемые в программе. К ним относятся константы, переменные, массивы и значения функций.
Процедура – наименьшая единица программного кода, на которую можно ссылаться по имени и которая может выполняться независимо. В VBA основные типы процедур – Sub и Function. Любая процедура содержит один или более операторов, помещенных между оператором объявления процедуры в начале и оператором завершения процедуры в конце.
Модуль – именованная единица, состоящая из одной или нескольких процедур, а также объявлений, относящихся ко всем процедурам в модуле.
