Сообщение об ошибке, использующее функцию CInt (): несоответствие типов

Аннотация

В системе программирования Microsoft Visual Basic при использовании функции CInt () с строкой, которая не может быть преобразована в число, появляется следующее сообщение об ошибке:

Ошибка во время выполнения "13": несоответствие типов

Дополнительная информация

Функция CInt преобразует выражение в целое число. Можно использовать любое допустимое числовое или строковое выражение, но строковое выражение должно быть преобразовано в число. В справочных материалах Visual Basic указано, что следует использовать функцию CInt вместо функции Val для предоставления одновременных преобразований из любого другого типа данных в целое число. Однако эти две функции не работают точно. При использовании функции Val для возврата чисел, содержащихся в строке, возвращаются только первые цифры в строке. Несмотря на то, что функция Val возвращает только числовую часть строкового выражения, функция CInt возвращает сообщение об ошибке, приведенное выше, если строковое выражение не может обрабатываться как число. Ниже приведена таблица выражений и значений, возвращаемых функциями CInt и Val. Expression Value Returned -------------------------------------------- Val("1726 56th Ave NE") 172656 CInt("1726 56th Ave NE") Error message Val("asdf") 0 Cint("asdf") Error message Val("1,000") 1 CInt("1,000") 1000 Val("1.34") 1.34 CInt("1.34") 1 Поскольку функция Val возвращает значение 0 при использовании с выражением, которое содержит 0 или вообще не имеет чисел, его нельзя использовать для проверки, является ли входная строка допустимым числом. Однако вы можете использовать функцию CInt в процедуре, чтобы определить, является ли строка ввода допустимым числом.

Ссылки

Для получения дополнительных сведений о функции CInt нажмите кнопку "Поиск" в справочнике по Visual Basic и введите:

CVErr

Нужна дополнительная помощь?

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединение к программе предварительной оценки Майкрософт

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×