Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_№13_VBA.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
919 Кб
Скачать
☆
    1. Обработка ошибок

Одна из наиболее мощных и привлекательных характеристик VBA − возможность перехватывать любые ошибки, анализировать их и предпринимать корректирующие действия.

Инструкция on error используется для включения или отключения режима перехвата ошибок в текущей процедуре. Синтаксис:

On Error {GoTo идентификатор-строки | Resume Next | GoTo 0}

Включение режима перехвата ошибок в текущей процедуре с продолжением ее работы при возникновении ошибки осуществляется инструкцией On Error Resume Next.

Включение режима перехвата ошибок с передачей управления инструкции с меткой My Error в случае возникновения ошибки:

On Error GoTo MyError:

Отключение перехвата ошибок в текущей процедуре:

On Error GoTo 0

    1. Математические операторы

Математические операторы в Visual Basic:

() − скобки

^ − возвести в степень

* − умножение

/ − деление

+ − плюс

– − минус

Функции:

Sqr(число) - вычесть корень (англ. square root);

Fix(число) - обрезает все числа после запятой, округление.

  1. Контрольные Вопросы:

  1. Как объявить переменную в VBA?

  2. Какие основные типы данных используются в VBA?

  3. Для чего предназначен тип Variant?

  4. Какие переменные имеют наибольшую область видимости?

  5. Как объявляются константы?

  6. Перечислите основные управляющие конструкции и их синтаксис.

  7. Чем процедура отличается от функции?

  8. Как объявить процедуру и как функцию?

  9. Как происходит вызов процедуры или функции?

  1. Задания:

  1. Написать функцию сложения числа с константой.

  2. Написать процедуру возведения в степень.

  3. Написать функцию, считающую факториал числа.

  4. Освоить отладку кода в отладчике (просмотр значений переменных, порядок выполнения команд, точки останова).

  5. Используя логические структуры (IF, IF-ELSE, SELECT-CASE), написать процедуру, которая по заданному номеру месяца определяет пору года.

  6. Используя циклы, написать процедуру, которая находит максимальное число из 10 введенных.

  7. Найти максимальное и минимальное среди массива введенных чисел и подсчитать их сумму.

  8. В процедуре из п.2 вызвать процедуру из п.5 (Call).

  9. Написать процедуру с использованием инструкции GoTo, Exit, Stop.

  10. Продемонстрировать работу с математическими операторами.

Контрольные Вопросы:

  1. Как объявить переменную в vba?

Для этого используется оператор Dim.

Dim <имяПеременной> [Аs<типДанных>]

  1. Какие основные типы данных используются в vba?

    Название типа

    Размер в байтах

    Описание и диапазон значения

    Byte

    1

    Для хранения положительного числа от 0 до 255

    Boolean

    2

    Для хранения логических значений; может содержать только значения True и False

    Date

    8

    Для хранения комбинации информации о дате и времени. Диапазон может быть от 1 января 100 года до 31 декабря 9999 года. Диапазон времени 00:00:00 до 23:59:59.

    Integer

    2

    Все целые числа от -32 768 до 32 767

    Long

    4

    Все целые числа от - 2 147 483 648 до 2 147 483 647

    Single

    4

    Отрицательные числа от -3.4х1038 до -1.4х10-45; Положительные числа от 1.4х10-45 до 3.4х1038

    String

    1

    Используется для хранения текста. Может содержать от 0 символов до приблизительно 2 миллиардов символов

    Variant

    16 байт + 1 байт/символ

    Тип Variant может хранить любой другой тип данных. Диапазон для данных типа Variant зависит от фактически сохраняемых данных. В случае текста диапазон соответствует строковому типу; в случае чисел диапазон такой, как у типа Double

    Double

    8

    Отрицательные числа от -1.8х10308 до -4.9х10-324; Положительные числа от 4.9х10-324 до 1.8х10308

    Currency

    4

    Тип Currency используется для хранения чисел, когда точность крайне важна, что бывает при вычислениях с денежными единицами

  2. Для чего предназначен тип Variant?

Тип Variant может хранить любой другой тип данных. Диапазон для данных типа Variant зависит от фактически сохраняемых данных. В случае текста диапазон соответствует строковому типу; в случае чисел диапазон такой, как у типа Double

  1. Какие переменные имеют наибольшую область видимости?

Double,Long

  1. Как объявляются константы?

Const <имяКонстанты> [As <типДанных>] = <выражение>

  1. Перечислите основные управляющие конструкции и их синтаксис.

Call

Call имя подпрограммы [(<аргументы>)]

Do…Loop

Do [{While | Until} <условие>]

[<инструкции тела цикла>]

[Exit Do]

[<инструкции тела цикла>]

Loop

For Next

For счетчик = начальное значение

То конечное значение [Step шаг]

[<инструкции тела цикла>]

[Exit For]

[ <инструкции тела цикла> ]

Next [счетчик]

For Each…Next

For Each элемент In группа

[<инструкции тела цикла>]

[Exit For]

[ <инструкции тела цикла> ]

Next [элемент]

GoTo

GoTo {метка | номер строки}

If Then Else

If <условие 1> Then

[<инструкции процедуры 1>]

[Elself <условие-2> Then

[<инструкции процедуры 2>]] ...

[Else]

[<инструкции процедуры n>] ]

End If

Select...Case

Select Case <проверяемое выражение>

[Case <список сравнения 1>

[<инструкции процедуры 1>]]

…

[Case Else

[<инструкции процедуры n>]]

End Select

Stop

Stop

While Wend

While <условие>

[<инструкции тела цикла>]

Wend

With

With <объект>

[<инструкции>]

End With

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]