Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Преобразование текста в число

    Преобразование текста в число с помощью кода VBA Excel. Массовое преобразование чисел из текстового формата в числовой в заданном диапазоне.

    Преобразование текста в число

    Преобразование чисел, записанных как текст, в числовой формат осуществляется в VBA Excel с помощью функций преобразования типов данных. Числа в текстовом формате могут быть получены из:

    • ячеек рабочего листа с текстовым форматом;
    • элементов управления формы (TextBox, ListBox, ComboBox);
    • строковых переменных;
    • выражений, возвращающих число в виде текста;
    • текстового поля функции InputBox.

    В большинстве случаев VBA Excel сам распознает текст как число без всяких преобразований:

    Обратите внимание на разделитель дробной части.

    Преобразование смешанной строки

    Преобразование в число строки, в начале которой имеются цифры, а далее идут другие символы, осуществляется в VBA Excel с помощью функции Val. Из других символов распознается только точка (.) в качестве разделителя дробной части.

    Массовое преобразование чисел

    Иногда требуется массовое преобразование чисел из текстового формата в числовой в заданном диапазоне рабочего листа.

    Пример преобразования диапазона ячеек с текстовым форматом в общий формат и значений ячеек из строки в число на примере объекта Selection:

    Сначала выбранному диапазону присваивается общий формат ("General"). Но текстовые значения в ячейках еще не преобразовались в числа. Обходим циклом все ячейки диапазона, и, если текстовое значение ячейки можно интерпретировать как число, умножаем это значение на единицу. После этого текст будет преобразован в число.


    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

    Добавить комментарий

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