- •Содержание
- •Раздел 1. Быстрый старт 2
- •Раздел 2. Редактор Visual Basic 11
- •Immediate Window (окно проверки) 15
- •Раздел 3. Переменные и типы данных 27
- •Раздел 4. Операторы управления 51
- •Раздел 5. Процедуры, подпрограммы и функции 66
- •Раздел 6. Объекты ms Excel 101
- •Раздел 7. Пользовательские формы 139
- •Immediate Window (окно проверки) 177
- •Введение
- •Раздел 1.Быстрый старт Использование макрорекордера
- •Запись макроса
- •Запуск макроса
- •Абсолютные и относительные ссылки Запись формулы на рабочем листе
- •Макрорекордер
- •Диалоговые окна для ввода/вывода данных
- •Функция InputBox
- •Функция MsgBox
- •Раздел 2.Редактор Visual Basic
- •Окна редактора vb
- •Project Window (окно проекта)
- •Properties Window (Окно свойств)
- •Code (окно программы)
- •Immediate Window (окно проверки)
- •Получение справки
- •Запись процедур
- •Режимы работы с программой
- •Ошибки и их обнаружение
- •Отладка
- •Меню и панели инструментов Visual Basic
- •Панели инструментов Стандартная панель инструментов
- •Панель инструментов отладки
- •Раздел 3.Переменные и типы данных Объявление переменных
- •Важность объявления переменных
- •Область видимости переменных
- •Время жизни переменных
- •Инициализация переменных
- •Операции с элементарными данными
- •Оператор присваивания
- •Выполнение операций
- •Арифметические операции
- •Операции сравнения
- •Оператор Like
- •Логические операции
- •Символьные операции
- •Приоритет операций
- •Операции с другими типами данных
- •Объектные переменные
- •Массивы
- •Динамические массивы
- •Пользовательский тип
- •Раздел 4.Операторы управления
- •Условный оператор If
- •Оператор выбора Select Case
- •Операторы цикла
- •Цикл For…Next
- •Цикл For Each…Next
- •Оператор Set
- •Цикл Do…Loop
- •Цикл While…Wend
- •Раздел 5.Процедуры, подпрограммы и функции
- •Классификация процедур
- •Структура и объявление процедуры
- •Синтаксис объявления процедуры общего типа
- •Синтаксис объявления функции
- •Вызов процедуры
- •Параметры и аргументы
- •Возврат значения функции
- •Использование процедур-функций на рабочем листе
- •Поименованные аргументы
- •Использование необязательных аргументов
- •Использование параметра ParamArray
- •Вызов процедур другого проекта
- •Автопроцедуры
- •Событийные процедуры
- •Рекурсивные процедуры
- •Встроенные функции Классы функций
- •Использование табличных функций
- •Организация интерфейса при помощи встроенных функций
- •Функция MsgBox
- •Функция InputBox
- •Строковые функции
- •Примеры на использование различных строковых функций Функция Format
- •Функция Val
- •Функции Len, Mid
- •Функция Left
- •Функция Instr
- •Функция Chr
- •Математические функции
- •Функции Int и Fix
- •Функция Log
- •Функции Randomize и Rnd
- •Функции даты и времени
- •Примеры функций даты и времени Функции Day, Month, Year, DateSerial
- •Функции Now, Time, Timer
- •Функция WeekDay
- •Функции Hour, Minute, Second
- •Раздел 6.Объекты ms Excel
- •Свойства объектов
- •Методы объектов
- •Модель объектов
- •Коллекции объектов
- •Обращение к объекту Контейнеры
- •Ссылка на объект
- •Оператор With
- •Использование объектных переменных
- •Объект Application
- •Активные объекты
- •Свойства, влияющие на высвечивание на экране Свойство DisplayAlerts (r/w Boolean)
- •Свойства DisplayFormulaBar (r/w Boolean), DisplayStatusBar (r/w Boolean)
- •Свойство ScreenUpdating (r/w Boolean)
- •Свойства Top, Left, Height, Width, UsableWidth, WindowState
- •Свойство Visible (r/w Boolean)
- •Другие свойства объекта Application
- •Методы Метод Calculate
- •Метод CheckSpelling
- •Метод OnTime
- •Метод Wait
- •Коллекции объектов
- •Объекты Workbooks и Workbook
- •Событийные процедуры
- •Объекты Sheets, WorkSheets и WorkSheet
- •Свойства Свойство Name (r/w String)
- •Свойство Type (r/o String)
- •Свойство UsedRange
- •Свойства Next и Previous
- •Свойство Parent
- •Свойство Visible (r/w Boolean)
- •Методы Метод Add
- •Методы Move и Select
- •Событийные процедуры
- •Объект Range
- •Свойства Cвойство Range
- •Свойство Cells
- •Свойство Offset
- •Метод Union и свойство Areas
- •Свойства Column и Row (r/o Integer)
- •Свойства Columns и Rows
- •Свойство CurrentRegion
- •Cвойства, связанные с шириной и высотой ячейки
- •Методы Методы Select и Activate
- •Метод Clear
- •Цветовое оформление объекта Range Свойство ColorIndex
- •Свойство Color
- •Раздел 7.Пользовательские формы
- •Режимы работы с формой
- •Режим конструктора
- •Элементы управления
- •Событийные процедуры
- •Режим выполнения
- •Объекты UserForm и Controls
- •Разработка приложения
- •Приложение 1
- •Конструирование начальной формы
- •Свойства формы и элементов управления
- •Создание событийных процедур
- •Конструирование формы для выбора рабочего листа
- •Создание событийных процедур
- •Элемент ListBox
- •Событийная процедура инициализации формы
- •Завершение разработки приложения
- •Связь формы с ячейками рабочего листа
- •Элемент TextBox
- •Элемент ListBox
- •Приложение 2
- •Конструирование форм
- •Процедуры
- •Приложение a. Справочная система Просмотр объектов, их свойств и методов (Object Browser)
- •Окно Object Browser
- •Панель инструментов Object Browser
- •Выход из Object Browser
- •Интерактивная подсказка
- •Приложение b. Инструментальные средства отладки программ
- •Контрольные точки или точки останова
- •Трассировка или пошаговое выполнение программы
- •Использование объекта Debug
- •Окна отладчика
- •Immediate Window (окно проверки)
- •Окно значения переменной
- •Locals Window (окно локальных переменных)
- •Окно контрольных значений (Watches)
- •Приложение c. Основные формы записи алгоритмов
- •Понятие "алгоритм"
- •Классификация алгоритмов
- •Способы записи алгоритмов
- •Запись на естественном языке
- •Изображение алгоритма в виде графических символов
- •Представление основных типов алгоритмов в виде блок-схем
Отладка
Процесс проверки работоспособности программы носит название "отладка" или "тестирование". Для отладки процедур используются различные приемы:
прерывание программы в заданной точке (контрольная точка – Breakpoint) или при выполнении некоторого условия;
выполнение программы по шагам (по операторам) – Step;
отслеживание значений переменных или свойств объектов (контрольные значения) – Watch;
изменение значений переменных вручную;
редактирование текста программы в режиме прерывания;
продолжение выполнения программы, начиная с некоторого оператора и т.п.
Если ошибка очевидна, то можно исправить ее, прекратив выполнение программы. Происходит переход в режим конструктора, в котором вносятся изменения в программу. Затем можно запустить программу заново. При перезапуске программа вновь возвращается к начальному состоянию, восстанавливаются исходные значения всех переменных и из памяти удаляются все приостановленные процедуры.
В режиме отладки программы можно продолжить или прервать выполнение программы, используя кнопки и или соответствующие команды меню Run. Можно выполнять программу по шагам.
Подробно о средствах отладки см. Приложение B. Инструментальные средства отладки программ.
При корректировке текста программы в режиме прерывания редактор VB иногда выдает сообщение о невозможности продолжения программы.
Если Вы не уверены в том, как будет выполняться исправляемая команда, то
Рекомендуется
перейти в окно Immediate Window;
в него скопировать или в нем заново набрать нужную команду и выполнить ее.
В режиме прерывания в этом окне будут доступны те же переменные, которые были доступны выполняемой процедуре в момент прерывания программы. Так как операторы, введенные в окне Immediate Window, не сохраняются после завершения работы с MS Excel, их необходимо скопировать в программу, если они должны быть сохранены.
Меню и панели инструментов Visual Basic
При переходе в редактор VB меняется меню и появляется стандартная панель инструментов Visual Basic.
Пиктограммы отладки программ расположены на отдельной панели инструментов, которая высвечивается командой View-Toolbars-Debug.
Меню
Рис. 2.8. Меню Visual Basic
Команды меню File (Файл) выполняют обычные действия по сохранению рабочей книги, позволяют распечатать лист с процедурами, экспортировать и импортировать модули, формы, классы, закрыть редактор VB и вернуться в таблицу.
Команды меню Edit (Правка) служат для редактирования текста процедур (копирования, перемещения и удаления фрагментов кода, поиска и замены текста, отмены последней команды редактирования). Можно просмотреть список свойств и методов, список констант, установить закладки.
Команды меню View (Вид) позволяют работать с панелями инструментов, просматривать объекты, переключаться на различные окна и т.д.
Пункт Code (Программа) показывает текст модуля или процедурного листа.
Пункт Definition (Описание) высвечивает подсказку по ключевому слову, на котором установлена точка вставки.
Пункт Object Browser (Просмотр объектов) предназначен для просмотра объектов, их методов и свойств, доступных в разных библиотеках, модулях и пользовательских приложениях (см. Приложение A. Справочная система).
Пункты Immediate Window, Locals Window, Watch Window позволяют просматривать окна редактора. Эти три окна предназначены для модификации переменных и тестирования операторов, для отслеживания значений переменных, для наблюдения за ходом выполнения программы.
Пункты Project Explorer, Properties Window позволяют перейти к окну проекта и окну свойств.
Запуск процедур и их отладка выполняется командами, которые распределены между тремя меню: Debug (Отладка), Run (Запуск), Tools (Сервис). Подробно см. Приложение B. Инструментальные средства отладки программ.
Пункты Run (Запуск программы), Break (Прервать), Reset (Сброс) служат для выполнения процедуры, для прерывания программы и внесения изменений после прерывания.
Пошаговое выполнение процедур произодится при помощи команд Step Into (Шаг с заходом), Step Over (Шаг с обходом), Step Out (Шаг с выходом). Описание команд см. в описании аналогичных кнопок панели инструментов Debug.
Команды Toggle Breakpoint (Точка останова), Clear All Breakpoints (Снять все точки останова) используются для установки и снятия контрольных точек (точек останова). Пошаговое выполнение неизбежно приводит к потере времени выполнения процедур. Контрольные точки позволяют уменьшить время пошагового выполнения кода. При достижении контрольной точки программа переходит в режим отладки и можно просмотреть значения переменных или сделать дополнительные вычисления.
Команды Add Watch (Добавить контрольное значение), Edit Watch (Изменить контрольное значение) дают возможность просматривать значения переменных или выражений, редактировать отслеживаемые выражения. В процессе выполнения программы значения высвечиваются в окне контрольных значений (Watches).
Команда Quick Watch (Установить контрольное значение) позволяет узнать значение переменной или выражения после прерывания программы.
В меню Tools (Сервис) находятся инструменты VB. Команды этого меню отличаются от команд аналогичного меню для табличного листа.
Команда Macros (Макросы) вызывает диалог запуска макроса (см. рис. 1.3). Для табличного листа эквивалентная ей команда Макрос разворачивает дополнительный список команд, которые используются для макрорекордера и были подробно разобраны выше.
Команда Ссылки (References) служит для связи текущего проекта с другими проектами или библиотеками.
Меню Window (Окно) позволяет открыть новое окно, упорядочить открытые окна, разделить активное окно.
Меню Help (Справка) – вызов справочной информации. Используется для запуска справочной системы MS Excel Visual Basic.
|
При выборе этого пункта доступны разделы помощи, сгруппированные в трех книгах. Подробно см. Приложение A. Справочная система. |