Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет-материалы_ДИ.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
140.29 Кб
Скачать

Типы переменных

Тип данных

Размер (байт)

Диапазон значений

Byte (байт)

1

От 0 до 255

Boolean (логический)

2

True (Истина) или False (Ложь)

Integer (целое)

2

От –32 768 до 32 767

Long (длинное целое)

4

От -2 147 483 648 до 2 147 483 647

Single(с плавающей точкой обычной точности)

4

По абсолютной величине

от 1,401298E-45 до 3,402823E38

Double(с плавающей точкой двойной точности)

8

По абсолютной величине от 4,94065645841247E-324

до 1,79769313486232E308

Currency (денежный)

8

От 922 337 03 685 77,5808

до 922 337 203 685 477,5807

Date (дата)

8

От 1 января 100 г. до 31 декабря 9999 г.

Object (объект)

4

Любой указатель объекта

String (строка переменной длины)

10 + длина строки

От 0 до 2*109

String (строка постоянной длины)

длина строке

От 1 к приблизительно 65 400

Array (массив)

Зависит от размера массива и типа элементов массива

Variant (вариант)

Зависит от содержимого переменной

Переменные необязательно задавать явным образом, но красивый стиль программирования рекомендует это делать. Тип переменной может отсутствовать. Тогда принимается тип Variant. Для описания переменной используется ключевое слово Dim.

Переменную можно описать с помощью следующей конструкции:

Dim Имя_Переменной As Тип_Переменной

Например, Dim A As Integer, B As Currency

Константы задаются одной из следующих конструкций:

Const Имя_Постоянной = Выражение

Const Имя_Постоянной As Тип_Постоянной = Выражение

Например, Const FileName = “test.xls”

Пример функции для вычисления площади круга при известном радиусе:

Function SQ (R) As Variant

Const Pi As Double = 3.14159

SQ = Pi * R^2

End Function

Прежде, чем начинать работать с процедурами и функциями, нужно научиться загружать редактор VBA и присоединять код к файлам рабочей книги Excel.

Редактор Visual Basic(VBE) обеспечивает все средства , необходимые для управления компонентами пользовательского проекта, написания кода, создания форм и отладки приложений.

Чтобы загрузить VBE, нужно выполнить команду Сервис/Макрос/Редактор Visual Basic.

На экране появится окно VBE. Рассмотрим основные компоненты окна. Основные компоненты окна Редактора VBE представлены в раздаточном материале

  1. Окно проекта (Project Window) – содержит иерархический список элементов пользовательского проекта.

  2. Окно свойств (Properties Window) – позволяет просматривать и устанавливать свойства различных объектов проекта.

  3. Окно редактора кода (Code Editor Window) – Место ввода и редактирования кода VBA.

  4. Окно отладки, окно локальных переменных и окно локальных значений (Watch Window) – помогает при отладке программы.

Кроме того могут присутствовать окно редактора пользовательских форм (UserForm Editor Window) и окно просмотра объектов (Object Browser Windows)

Программа VBA состоит из одного или нескольких модулей. Модуль – это лист с текстом программы, вставленный в рабочую книгу.

Ввод подпрограмм в модуле VBA начинается с первой строки с ключевого слова Sub или Function, а заканчивается ключевыми словами End Sub и End Function.

Обычно текст программы на VBA начинается с опций, которые управляют описанием переменных, способом сравнения строк и т. д.

При написании программ удобно в тексте помещать комментарии – это пояснительный текст, который можно записать в любом месте программы. Каждая строка комментария начинается со знака апострофа. Комментарии игнорируются компилятором, и поэтому никакого влияния на программу не оказывают. Комментарии удобно использовать при отладке операторов для их временного отключения.

Для более компактной записи программы используется символ « : » в качестве разделителя операторов в одной строке.

Инструкция VBA представляет собой полную команду языка VB. Она может содержать ключевые слова, операторы, переменные, константы и выражения. В VBA имеются следующие категории инструкций:

  1. Описания;

  2. Присваивания;

  3. Управления.

Оператор присваивания назначает результат вычисления выражения переменной, константе или свойству объекта. Оператор присваивания всегда включает знак равенства =.

Структури керування – це інструмент для прийняття рішень усередині самої програми У VBA використовуються такі основні структури керування:

If…Then…Else

Select Case

For…Next

Do…Loop.

Нижче будуть наведені приклади синтаксису цих структур.

  1. Умовний оператор If…Then…Else

Умовне виконання групи операторів в залежності від значення вираження.

Синтаксис:

    1. проста лінійна форма:

If умова Then [оператор_1] [Else оператор_2]

Оператор_1 виконується, якщо умова є істинною, в протилежному випадку виконується оператор_2. Умова це вираження логічного типу. Вираження може бути простим та складним. В першому випадку використовуються логічні відносини, перелік яких наведений у таблиці 3.1. Складні логічні вираження утворюються із простих за допомогою використання логічних операцій, перелік яких наведений у таблиці 3.2. та, при необхідності, круглих дужок.

    1. блочна форма:

If умова_1 Then

[блок_ операторів1]

[ElseIf умова_2 Then

[блок_ операторів2]

[ElseIf умова_3 Then

[блок_ операторів_3]

...

[Else

[блок_ операторів]]

End If

Блок операторів_i виконується, якщо умова_ I є істинною, в протилежному випадку виконується блок_ операторів.

Оператори Else та ElseIf є необов'язковими. Можна використовувати стільки операторів ElseIf скільки потрібно в блоці If, але вони ніколи не можуть знаходиться після оператора Else. Блоки операторів If можуть бути вкладеними; тобто містить у собі інші If блоки.

Приклад. If C < 50000 Then

s3 = p3

f1 = 3

End If

Логічні відносини

Операція

Найменування

Вираження

Результат

=

дорівнює

A=B

True, якщо A дорівнює B

<>

не дорівнює

A<>B

True якщо A не дорівнює B

>

більше

A>B

True якщо A більше B

<

менше

A<B

True якщо A менше B

>=

більше або дорівнює

A>=B

True якщо A більше або дорівнює B

<=

менше, або дорівнює

A<=B

True якщо A менше, або дорівнює B

Логічні операцій

Операція

Найменування

Вираження

A

B

Результат

Not

Логическое отрицание

Not A

False

True

True

False

And

Логическое И

A And B

True

True

False

False

True

False

True

False

True

False

False

False

Or

Логическое ИЛИ

A Or B

True

True

False

False

True

False

True

False

True

True

True

False

  1. Оператор Select Case

Виконує одну з декілька груп операторів в залежності від значення вираження, що перевіряється.

Синтаксис:

Select Case вираження, що перевіряється

[Case список виражень-n

[оператори-n]] ...

[Case Else

[else оператори]]

End Select

  1. Оператори циклу

Для виконання якогось оператору, або блоку операторів, декілька разів використовуються оператори циклу. Існують 2 види циклів:

  • цикли, які виконуються заздалегідь задану кількість разів, в VBA для цього використовується оператор For ... Next;

  • цикли, які виконуються до тих пір поки не буде виконана яка-небудь умова – оператор Do … Loop

Є різновиди кожного типу циклів.

Нижче наведено синтаксис основних видів операторів циклу.

Оператор циклу For ... Next

Повторює блок операторів задану кількість раз.

Синтаксис For лічильник = початок To кінець [Step крок]

[оператори]

[Exit For]

[оператори]

Next [лічильник]

лічильник - обов’язковий; числова змінна, яка використовується як лічильник циклу;

початок - обов’язковий;. початкове значення лічильника;

кінець - обов’язковий; кінцеве значення лічильника;

крок - необов’язковий; значення, на яке змінюється лічильник при кожному виконанні циклу. За умовчанням дорівнює одиниці.

оператори – оператори; один, або більш операторів між For and Next, які виконуються задану кількість разів.

Приклад.

For j = 2 To n

C = Cells(j, 2).Value 'змінної C присвоюється значення комірки j-го рядка стовпця B

…………………………………

....................................................

...................................................

Next j

Оператор циклу Do … Loop

Повторює блок операторів поки умова є істинною – while, або до тих пір, коли умова стане істинною – until.

Синтаксис:

Do [{While | Until} умова]

[оператори]

[Exit Do]

[оператори]

Loop

Приклад.

Do While pr1 = 0 'цикл виконується доки pr1=0

...............................................................

...............................................................

..............................................................

Loop

Приклад використання різних типів операторів циклу. Обчислити значення функції F (див. попереднє завдання) для декількох значень аргументу X, що знаходяться на листі Excel у стовпці A, с другого рядку, тобто A2 – це адрес першого значення аргументу.

Одним із варіантів організації діалогу с користувачем є використання функцій MsgBox та InputBox.