End Sub. Предотвращение ошибок программными средствами

Предотвращение ошибок программными средствами

Рассмотрим программу, которая вычисляет обратное число и выводит его на экран:

Sub ОбратноеЧисло()

Dim x As Double

Dim y As Double

x = CDbl(InputBox("Введите число:"))

y = 1/x

MsgBox "Обратное число:" & y

где: СDbl – функция преобразования типов (строковое значение преобразуется в число типа Double).

Даже в этой простой программе имеются свои подводные камни, - например, пользователь по невнимательности забудет ввести число, или введет его неправильно (символ вместо числа, десятичную точку вместо десятичной запятой), или введет ноль. Во всех этих случаях произойдет аварийное завершение программы и программа выдаст сообщение об ошибке: либо о несоответствии типов (Рис. 11‑1), либо о делении на ноль (Рис. 11‑2).

Рис. 11‑1. Ошибка несоответствия типов Рис. 11‑2. Ошибка деления на ноль

Чтобы избежать этого, необходимо модернизировать программу таким образом, чтобы она предотвращала перечисленные ошибки. Например, так:

Sub ОбратноеЧисло()

Dim x As Double

Dim y As Double

Dim Число As String

Число = InputBox("Введите число:")

‘Функция IsNumeric проверяет, является ли введенная _

последовательность числом:

If IsNumeric(Число) = False Then

MsgBox "Некорректный ввод исходного значения!", _

vbExclamation, "Обратное число"


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: