Среда разработки VBA
Обновлено
6
КУРС: ИнформатикаТЕМА:«Среда разработки VBA»1. «Алгоритмы. Базовые структуры»АлгоритмыАлгоритм - это точное и понятное описание последовательности действий над заданными объектами, позволяющее получить конечный результат.Вы уже не раз встречались с алгоритмами в различных школьных предметах. Например, в химии получение того или иного соединения можно описать с помощью алгоритма. Решение примеров и неравенств в матике - это сплошные алгоритмы. Алгоритмы везде, например ваши действия каждое утро можно представить данным алгоритмом:§ Проснулись§ Встали с постели§ Умылись и почистили зубы§ Оделись§ Позавтракали§ Пошли (поехали) в школуВ алгоритме важна последовательность действий и уровень детализации (подробность описания действий). Если в алгоритме пропущено одно действие (например - одеться) - то произойдёт серьёзная неприятность.Ничего хорошего не произойдёт, если поменять местами два действия: проснулись-встали с постели, тогда вы - «лунатик», надо обращаться к врачу.Алгоритм решения одной и той же задачи может быть представлен по-разному: устно, в виде схемы, графически с помощью рисунка, записан письменно в тетрадь.Важно, чтобы исполнитель алгоритма чётко понимал, что от него требуется. Исполнителем может быть животное, человек, машина, поэтому пользуйтесь в алгоритме командами, которые исполнитель может понять.Составить алгоритм действия: принести карандаш, который лежит в углу аудитории и подать преподавателю. Алгоритм для собаки, человека и машины, должны составить учащиеся, преподаватель, при необходимости корректирует алгоритм.Для моделирования ситуации можно выбрать одного студента, пусть он будет роботом и знает команды ВП, НД, ЛВ, ПР,НАКЛОН, параметры первых двух команд количество шагов, третей и четвертой угол поворота, а учащиеся пусть зададут ему алгоритм, необходимый для выполнения действия. Для усложнения алгоритма можно поставить преграды в виде стульев.При составлении любого алгоритма используются одни и те же составные блоки, называемые базовыми структурами. Их всего три: следование, развилка, цикл. Это три типа кирпичиков, из которых можно сложить любой алгоритм. Для графического представления базовых структур используют специальные обозначения. Приступим к описанию базовых структур.1. Следование (линейный алгоритм) означает, что действия должны быть выполнены последовательно одно за другим. На практике, как правило, сводится к вводу исходных данных, вычислениям по одной или нескольким формулам и выводу полученных результатов, не требуя отдельного запоминания промежуточных результатов.2. Развилка (разветвляющийся процесс), означает выбор одного из двух вариантов в зависимости от значения некоторого логического выраженияРазвилка: « Если - то - иначе»Может оказаться, что при одном из значений логического выражения не нужно выполнять никаких действий. В этом случае структура развилки может быть представлена в таком виде Развилка: «Если - то»6
3. Цикл означает повторное выполнение одного и того же действия или блока действий, называемых телом цикла.Циклы бывают«До»(с постусловием - условие проверяется после выполнения цикла), «Пока»(с предусловием - условие проверяется перед выполнением цикла)Цикл - «Пока» с предусловиемВначале - на первом шаге цикла - проверяется значение логического выражения. Если оно истинно, то выполняется тело цикла.Затем - на втором шаге цикла - снова делается проверка значения логического выражения и, если оно всё ещё истинно, снова выполняется тело цикла и т.д.Цикл завершается, когда значение логического выражения становиться ложным.Цикл - «До» с постусловиемЗначение логического выражения проверяется после выполнения тела циклаЦикл завершается, когда значение логического выражения становиться истинным2 «Знакомство со средой разработки VBA»Внешний вид и элементы VBAЧтобы зайти в VBA не нужно покупать специальное программное обеспечение, достаточно зайти в MS Word или MS Excel и нажать комбинацию клавиш Alt+F11Внешний вид окна VBAОсновные элементы VBA:§ Меню, в состав которого входят все команды, которые используются при создании приложений;§ Toolbox (Панель элементов управления), при помощи данного элемента среды разработки программист может размещать на форме те или иные элементы управления, которые необходимы для создания приложения;§ Контекстное меню;§ Toolbar (Панели инструментов), представляют собой различные группы кнопок при помощи которых можно выполнять те или иные операции(1-добавить окно дизайнер форм, 2- запуск программы, 3-временная остановка программы, 4- завершение работы программы, 5- отобразить окно проводника проектов, 6- отобразить окно свойств, 7- отобразить Панель элементов управления)§ Project(окно проводника проектов)используется в случае необходимости работы с несколькими проектами одновременно;§ UserForm (дизайнер форм)окно, которое служит для редактирования форм, то есть добавления и удаления из них различных элементов управления;§ Properties (Окно свойств) используется для того, чтобы изменять свойства выделенного объекта, в частности, элемента управления;§ Code (Окно редактирования кода) предназначено для создания и редактирования кода программы, для его появления нужно дважды щелкнуть на форме или элементе управления, расположенном на ней.Окно редактирования кодаВнешний вид окна VBA можно изменять с помощью пункта меню View (Вид).Описание назначения некоторых встроенных элементов управления:1. CommandButton (Управляющая кнопка) выполнение приложением определённых действий, вызванных нажатием на управляющую кнопку; | |
2. Image (Изображение) вывод графических элементов в форме; | |
3. Label (Метка) отображение надписей в форме; | |
4. TextBox (текст) ввод текста; |
Префикс | Элемент управления | Пример | |
Cmd | CommandButton (Управляющая кнопка) | cmdExit | |
Frm | Form (Форма) | frmMain | |
Img | Image (Изображение) | imgSpace | |
Lbl | Label (Метка) | lblComment | |
Txt | TextBox (текст) | txtLetter | |
chk | CheckBox (Флажок) | chkAgreement | |
Cbo | ComboBox (Ниспадающий список) | cboList | |
Dat | Data (Данные) | DatTable | |
Dir | DirListBox (Список каталогов) | dirFolder | |
Drv | DriveListBox (Список дисков) | drvDevice | |
Fil | FileListBox (Список файлов) | filDocument | |
Fra | Frame (Рамка) | fraTitle | |
Hsb | HScrollBar (Горизонтальная полоса прокрутки) | hsbPicture | |
Lin | Line (Линия) | linDiagonal | |
Lst | ListBox (Список элементов) | LstSurname | |
mnu | Menu (Меню) | mnuHelp | |
ole | OLE (Контейнер OLE) | oleGraph | |
Opt | OptionButton (Переключатель) | optAgeGroup | |
pic | PictureBox (Рисунок) | picScreen | |
Shp | Shape (Фигура) | shpRect | |
Tmr | Timer (Таймер) | tmrCurrent | |
Vsb | VScrollBar (Вертикальная полоса прокрутки) | vsbText |
Тип | Содержимое | Память, байт | Диапазон возможных значений | |
Integer | Целые числа | 2 | [-215;215-1] | |
Long | Целые числа | 4 | [-231;231-1] | |
Single | Вещественные числа одинарной точности | 4 | [-2128;-2149] и [2-149;2128-1] | |
Double | Вещественные числа двойной точности | 8 | [-21024;-21074] и [2-1074;21024-1] | |
Currency | Вещественные числа (целая часть - до 15 цифр, дробная - до 4 цифр) | 8 | [-263*10-4; (263-1) *10-4] | |
String | Текст | 1 для каждого символа | До 216символов для строк фиксированной длины. До 231 символов для динамических строк | |
Byte | Целые числа | 1 | [0;28-1] | |
Boolean | Логические значения | 2 | [True;False] | |
Date | Дата и время | 8 | [1.01.100;31.12.9999] | |
Object | Объект | 4 | Ссылка на объект | |
variant | Любая | 16+ (1 для каждого символа) | Диапазон не определён |
Названия типа | Символ в качестве суффикса | |
Integer | % | |
Long | & | |
Currency | @ | |
Single | ! | |
Double | # | |
String | $ |
Префикс | Тип переменной | Пример | |
bln | Boolean (Булевский) | blnCheckon | |
byt | Byte (Байт) | bytCounter | |
cur | Currency (Денежный) | CurMoney | |
dbl | Double (Число с плавающей десятичной точкой двойной точности) | dblExperience | |
dtm | Date (Дата и время) | DtmToday | |
int | Integer (Целое) | IntNamber | |
lng | Long (Длинное целое) | LngResult | |
obj | Object (Объект) | ObjMainForm | |
str | String (Строка) | StrAnser | |
sng | Single (Число с плавающей десятичной точкой одинарной точности) | sngResearch | |
vnt | Variant (Произвольный) | vntAnything |
X1 | X2 | And | Or | Xor | Imp | Eqv | |
0 | 0 | 0 | 0 | 0 | 1 | 1 | |
0 | 1 | 0 | 1 | 1 | 1 | 0 | |
1 | 0 | 0 | 1 | 1 | 0 | 0 | |
1 | 1 | 1 | 1 | 0 | 1 | 1 |
Запись на Visual Basic | Матическая запись | Описание | |
Abs (x) | |x| | Модуль | |
Atn (x) | Arctg x | Арктангенс | |
Cos (x) | Cos x | Косинус | |
Exp (x) | ex | Экспонента | |
Fix (x) | Отбрасывание дробной части | ||
Int (x) | Наибольшее целое число, не превосходящее х | ||
Round (x,a) | Округление числа х с точностью до а десятичных знаков | ||
Log (x) | Ln x | Натуральный логарифм | |
Rnd (x) | Датчик случайных чисел | ||
Sng (x) | В зависимости от знака числа возвращает 1, 0 или -1 | ||
Sin (x) | Sin x | Синус | |
Sqr (x) | Квадратный корень | ||
Tan (x) | Tg x | Тангенс |
Название функции | Получаемый тип данных | |
CBool | Boolean | |
CByte | Byte | |
CCur | Currency | |
CDate | Date | |
CDbl | Double | |
CInt | Integer | |
CLng | Long | |
CSng | Single | |
CStr | String | |
CVar | Variable |
