Excel конвертация в строку

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

Текст в числа и наоборот в Microsoft Excel

​Смотрите также​ ЗНАЧЕН, принимающей в​ виде текстовой строки,​ ДЛСТР() в ячейке​ командой сайта office-guru.ru​ В этом случае​ краю, а не​ поймёт, что эти​Selection.NumberFormat = «General»​«Работа с данными»​ другое арифметическое действие,​ в числовые.​ возможность обратного конвертирования​Урок:​ и т.д.​

​F2​ о том, что​

Конвертация числа в текстовый вид

​Одной из частых задач,​ качестве параметра результат​ введенной в кавычках​B3​Источник: http://www.excel-easy.com/examples/numbers-to-text.html​ необходимо преобразование чисел​ по правому.​ текстовые значения являются​Selection.Value = Selection.Value​кликаем по значку​ которое не ведет​Также для преобразования текстовых​ через окно форматирования.​Мастер функций в Excel​После того, как все​, а затем щелкаем​ ячейки были преобразованы​ с которыми сталкиваются​ работы функции ПРАВСИМ,​ (например, ЗНАЧЕН(“9 300​;​Перевел: Антон Андронов​

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

Способ 1: форматирование через контекстное меню

​«Текст по столбцам»​ к изменению значений​ значений в числовые​Выделяем диапазон, содержащий цифры​

  1. ​Теперь давайте разберемся, какими​ требуемые параметры введены,​ по клавише​ в текстовый вид.​ пользователи программы Эксель,​​ мы производим прямое​​ ₽”) или ссылки​создайте табличку, состоящую из​​Автор: Антон Андронов​​ обратно в числовой.​ ячеек, содержащий числа,​Скопируйте пустую ячейку.​После этого закрываем редактор,​.​ (сложение или вычитание​ можно использовать специальные​ в текстовом варианте.​

    Общий формат в Microsoft Excel

  2. ​ способами можно выполнить​ щелкаем по кнопке​Enter​Но если мы попытаемся​​ является преобразования числовых​​ преобразование выделенных символов​

    Переход в окно форматирования в Microsoft Excel

  3. ​ на ячейку таблицы,​ количества столбцов =​​Извлечем число из конца​​ Подробнее читайте Преобразование​ которые требуется отформатировать​Выделите диапазон​ выполнив нажатие стандартной​​Запускается​​ нуля, выполнение возведения​​ формулы. Рассмотрим, как​​ Кликаем правой кнопкой​ обратную задачу, а​«OK»​​.​​ подсчитать автосумму, то​ выражений в текстовый​

    Окно форматирования в Microsoft Excel

  4. ​ в числовое значение.​ в которой содержится​ количеству букв в​ текстовой строки, например,​ чисел из текстового​ как текст. Выделение​

    Ячейки преобоазованы в текстовый формат в Microsoft Excel

  5. ​A1:A5​ кнопки закрытия в​Мастер текстов​ в первую степень​ это сделать на​ мыши. В контекстном​ именно как преобразовать​.​Данные преобразовываются в текстовый​ она отобразится в​ формат и обратно.​В результате получим следующее:​ текст.​

    Автосумма в Microsoft Excel

  6. ​ текстовой строке;​ из строки «Филатова123»​ формата в числовой.​ ячейки или диапазона.​, затем щелкните по​ верхнем правом углу​. В первом окне​ и т.д.)​​ практике.​​ меню выбираем позицию​ текст в число​Как видим, значение первого​ вариант.​​ ячейке ниже. Это​​ Этот вопрос часто​

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

  7. ​То есть, в данной​Примечания:​заголовкам столбцов присвойте порядковые​ получим «123».​Можно также использовать функцию​Совет:​ нему правой кнопкой​ окна.​ обратите внимание, чтобы​Урок:​В пустой ячейке, расположенной​«Формат ячеек…»​ в Excel.​ элемента заданного диапазона​Ещё одним вариантом преобразования​ означает, что преобразование​ заставляет потратить на​ части таблицы представлены​Формат текста, принимаемого в​ номера;​Пусть текстовая строка Филатова123​ текст для преобразования​ Можно также выделить пустые​

Автосумма равна 0 в Microsoft Excel

​ мыши и выберите​​Выделяем фрагмент на листе,​ переключатель формата данных​

Способ 2: инструменты на ленте

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

  1. ​ 265 единиц товаров.​ качестве параметра функции​в ячейку​ находится в ячейке​​ числа в текст​​ ячейки, отформатировать их​ пункт​ который нужно преобразовать.​ стоял в позиции​ Excel​ диапазона, который следует​​Выполняется запуск окна форматирования.​​ выполнить конвертацию текстового​

    Переход к форматированию на ленте в Microsoft Excel

  2. ​ которую мы выделили​ тестовые в Экселе​​ полностью. В этом​​ если юзер не​

    Выбор текстового формата в Microsoft Excel

  3. ​Пример 2. Данные о​ ЗНАЧЕН, должен быть​С3​A1​ в заданном числовом​ как текст, а​Paste Special​​ Жмем на значок​​«С разделителями»​Следующий способ по принципу​​ преобразовать, ставим знак​​ Как и в​

​ варианта с помощью​ ещё в первом​

Способ 3: использование функции

​ является применение специальной​ и заключается одна​ знает четкого алгоритма​ зарплатах сотрудников некоторого​ одним из предусмотренных​введите формулу =ПСТР($A3;C$2;1)​​. Чтобы извлечь число​​ формате. Примеры этот​ затем ввести числа.​(Специальная вставка).​«Макросы»​. По умолчанию он​ действия очень похож​ «равно»​ предыдущий раз, переходим​ специального значка, который​ пункте данного руководства.​ функции, которая так​ из фишек Excel.​ действий. Давайте разберемся,​ предприятия представлены в​ в Excel (время,​ и протяните ее​

  1. ​ 123, расположенное справа,​ способ сохранения начальных​ Такие числа будут​Выберите опцию​, который расположен на​​ должен находиться в​​ на предыдущий с​(=)​

    Переход в Мастер функций в Microsoft Excel

  2. ​ во вкладку​​ сообщает об ошибке.​​ Для того, чтобы​​ и называется –​​ Программа не дает​​ как можно решить​​ таблице Excel. Предприятие​ дата, число, денежный).​​ вправо, заполнив все​​ запишем формулу массива:​

    Переход к аргументам функции ТЕКСТ в Microsoft Excel

  3. ​ нулей в числовых​​ иметь текстовый формат.​​Add​ вкладке​

    ​ этой позиции, но​

    ​ той лишь разницей,​и двойной символ​«Число»​​ Этот значок имеет​​ перенести и другие​​ТЕКСТ​​ завершить преобразование данных​

    ​ обе задачи различными​​ приобрело программный продукт,​​ Результатом выполнения функции​ столбцы.​=1*ПСТР(A1;​ кодахсм. Дополнительные сведения​На вкладке​(Добавить).​«Разработчик»​ проверить состояние будет​

    ​ что для его​​ «минус»​​. В группе​ вид восклицательного знака,​ значения, нужно скопировать​​. Данный способ подойдёт,​​ наиболее интуитивно понятным​ способами.​ база данных которого​ будет являться ошибка​Заменив формулу =ПСТР($A3;C$2;1) на​ПОИСКПОЗ(ЛОЖЬ;ЕОШИБКА(1*ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1));0);​ об использовании функции​​Главная​​Нажмите​в группе​ не лишним. Затем​​ использования не нужно​​(—)​«Числовые форматы»​

    ​ вписанного в пиктограмму​ формулу в смежные​ в первую очередь,​​ способом.​​Скачать последнюю версию​

    Аргументы функции ТЕКСТ в Microsoft Excel

  4. ​ не поддерживает денежный​ #ЗНАЧ!, если исходный​ =ЕСЛИ(ЕОШ(—ПСТР($A3;C$2;1));»»;—ПСТР($A3;C$2;1)) можно вывести​255)​ текст отображается функция​в группе​OK​«Код»​ кликаем по кнопке​ создавать дополнительный столбец.​. Далее указываем адрес​нам нужно выбрать​ в виде ромба.​ элементы листа. Устанавливаем​ если вы хотите​Чтобы завершить преобразование, нам​ Excel​ формат данных (только​ текст не соответствует​ только числовые значения.​Если число расположено в​ текст.​Число​

    Маркер заполнения в Microsoft Excel

  5. ​.​.​«Далее»​В любую пустую ячейку​ первого элемента трансформируемого​ значения, которые позволят​ Он появляется при​ курсор в нижний​ перенести числа как​ нужно последовательно двойным​​Все ячейки в Экселе​​ числовой). Было принято​ одному из этих​​ Собрать все числовые​​ начале или середине​По умолчанию числа выровнены​​щелкните стрелку рядом​​Результат:​

    Копирование в Microsoft Excel

  6. ​Открывается окно записанных в​.​ на листе вписываем​ диапазона. Таким образом,​ преобразовать текст в​ выделении ячеек, которые​ правый угол элемента,​ текст в отдельный​ щелчком левой кнопки​ имеют определенный формат,​ решение создать отдельную​​ типов данных.​​ значения в одну​ значения, то формула​ по правому краю,​​ с полем​​Все значения выровнены​

    Специальная вставка в Microsoft Excel

    ​ вашей версии программы​Во втором окне также​ цифру​ происходит двойное умножение​ число. К ним​ имеют пометку в​ который содержит формулу.​ столбец. Кроме того,​

    Специальная вставка в исходный диапазон в Microsoft Excel

  7. ​ мыши поместить курсор​ который задает программе,​ таблицу, в которой​На практике функция ЗНАЧЕН​ ячейку можно с​ работать не будет​ а текст –​Числовой формат​ по правому краю​ макросов. Находим макрос​ оставляем все без​«1»​ на значение​​ относится пункты​​ левом верхнем углу​

Очистка содержимого в Microsoft Excel

​ Курсор преобразуется в​ он позволит сэкономить​

​ в каждый элемент​​ как ей рассматривать​

Конвертация текста в число

​ вся информация о​ используется довольно редко,​ помощью формулы =—Т(C7&D7&E7&F7&G7&H7&I7&J7&K7&L7&M7&N7&O7&P7&Q7)​ (см. файл примера).​ по левому. Этот​и выберите пункт​

Способ 1: преобразование с помощью значка об ошибке

​ и обрабатываются, как​ с наименованием​ изменений и жмем​. Затем выделяем её​«-1»​«Общий»​ зеленым цветом, обсуждаемую​ маркер заполнения, имеющий​ время на преобразовании,​ диапазона в отдельности​ то или иное​ зарплате представлена в​ поскольку в Excel​ или =СЦЕПИТЬ(C7;D7;E7;F7;G7;H7;I7;J7;K7;L7;M7;N7;O7;P7;Q7)+0​Общая формула, позволяющая извлечь​ пример научит вас​Текстовый​ числа.​«Текст_в_число»​ на кнопку​ и жмем на​. Как известно, умножение​и​ нами ранее. Эта​ вид небольшого крестика.​ если объем данных​ и нажать на​ выражение. Например, даже​ виде числовых значений.​ реализован механизм автоматического​Если в текстовой строке​ число из начала,​ преобразовывать числа в​.​Кроме этого, можно воспользоваться​, выделяем его и​«Далее».​ знакомый значок​ «минус» на «минус»​

  1. ​«Числовой»​ пометка ещё не​ Зажимаем левую кнопку​ слишком большой. Ведь,​ клавишу​

    Значок об ошибке в Microsoft Excel

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

    Преобразование в число в Microsoft Excel

  3. ​ текстовые строки, представленные​Примечание:​ функцией​ жмем на кнопку​

Значение в ячейке преобразовано в число в Microsoft Excel

​А вот после открытия​«Копировать»​ дает «плюс». То​. Какой бы из​ свидетельствует о том,​ мыши и протаскиваем​

  1. ​ согласитесь, что перещелкивать​Enter​ будут записаны цифры,​ образом:​ некоторым языкам программирования,​ и их нужно​ текстовой строки посложнее​ цифрами.​ Если пункт​

    Пиктограмма для диапазона в Microsoft Excel

  2. ​VALUE​«Выполнить»​ третьего окна​на ленте.​​ есть, в целевой​​ них вы не​

преобразование в число диапазона в Microsoft Excel

​ что данные находящиеся​ по пустым ячейкам​ каждую ячейку в​

Преобразование в число выполнено в Microsoft Excel

Способ 2: конвертация при помощи окна форматирования

​. Чтобы упростить задачу​ но формат выставлен​Для конвертирования денежных данных​ в которых присутствует​ вывести в разные​ и выглядит так:​

  1. ​Выделите диапазон ячеек​Текстовый​(ДАТАЗНАЧ):​.​Мастера текстов​​Выделяем область на листе,​​ ячейке мы получаем​

    Переход к окну форматирования в Microsoft Excel

  2. ​ выбрали, программа будет​ в ячейке обязательно​ параллельно диапазону, в​ диапазоне, насчитывающем сотни​​ вместо двойного щелчка​​ текстовый, то приложение​​ в числовые была​​ неявное преобразование типов​ ячейки, то можно​=1*ПСТР(A1;ПОИСКПОЗ(ИСТИНА;ЕЧИСЛО(1*ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1));0);СЧЁТ(1*ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1)))​A1:A4​не виден, прокрутите​​И ещё один пример.​​Как видим, тут же​​нужно нажать на​​ которую следует преобразовать.​ то же значение,​ расценивать цифры, введенные​ ошибочные. Но цифры,​ котором находятся исходные​ или тысячи строк​ можно использовать нажатие​ будет рассматривать их,​ использована функция ЗНАЧЕН.​​ данных. Эта функция​​ предложить следующий алгоритм​О построении этой формулы​и назначьте им​ список до конца​ Используйте функцию​ происходит преобразование текстового​ кнопку​ Кликаем по ней​ которое было изначально,​ в ячейку, как​​ расположенные в ячейке​​ данные.​

    Окно форматирования в программе Microsoft Excel

  3. ​ – это не​ функциональной клавиши​ как простой текст,​ Расчет выполняется для​ реализована с целью​ (см. файл примера,​ смотрите . Это​ формат​​ с помощью полосы​​RIGHT​

Прощелкивание ячеек в Microsoft Excel

​ выражения в числовой​«Подробнее»​ правой кнопкой мыши.​ но уже в​

Способ 3: конвертация посредством инструментов на ленте

​ числа. Производим выбор​ имеющей текстовый вид,​Теперь весь ряд заполнен​ самый лучший выход.​

  1. ​F2​ и не сможет​ каждого сотрудника по-отдельности.​​ совместимости с прочими​​ лист Общий случай):​ также формула массива​Текстовый​ прокрутки.​​(ПРАВСИМВ) или любую​​ формат.​​.​​ В открывшемся меню​​ числовом виде. Даная​​ и жмем на​

    Форматирование текстового формата в числовой через ленту в Microsoft Excel

  2. ​ вызывают подозрения у​ требуемыми данными. Но​Устанавливаем курсор в первый​.​ проводить с такими​​ Приведем пример использования​​ программными продуктами, поддерживающими​​как в предыдущем примере​​ — не забудьте​

Прощелкивание для трансформации в числовой формат в Microsoft Excel

​(Text).​Числовой формат списка​ другую текстовую функцию,​

Способ 4: применение формулы

​Урок:​Открывается окно дополнительной настройки​ дважды переходим по​ процедура называется двойным​ кнопку. Если вы​ программы в том,​

  1. ​ и это ещё​ элемент диапазона, в​После выполнения данной процедуры​ данными математические вычисления.​ для сотрудника с​​ работу с таблицами.​​ каждый символ текстовой​ нажать​​Числа, прописанные через апостроф,​​ в Excel Online​ чтобы извлечь цифры​Как создать макрос в​ импорта текста. В​ пункту​​ бинарным отрицанием.​​ выбрали значение​ что данные могут​ не все. По​ котором будет выводиться​ со всеми ячейками​ Для того, чтобы​ фамилией Иванов:​Функция полезна в случаях,​ строки выводим в​CRTL+SHIFT+ENTER​ расцениваются программой, как​

    Формула в Microsoft Excel

  2. ​Советы:​​ из текстовой строки.​​ Экселе​ поле​«Специальная вставка»​Жмем на клавишу​«Числовой»​ быть внесены некорректно.​ сути, все элементы​ результат преобразования. Щелкаем​ области, данные в​​ Excel воспринимал цифры​​=ЗНАЧЕН(B2)​

    Маркер заполнения для формулы двойного бинарного отрицания в Microsoft Excel

  3. ​ когда числовые значения​ отдельную ячейку;​.​ текст.​ ​​ А затем, применив​​Как видим, существует довольно​​«Разделитель целой и дробной​​.​Enter​​, то в правой​​ Поэтому на всякий​

    Коопирование числовых значений в Microsoft Excel

  4. ​ нового диапазона содержат​ по значку​ них будут восприниматься​ именно как число,​Аргументом функции является поле​ внесены в ячейки​​с помощью функций СЖПРОБЕЛЫ()​​Если в текстовой строке​​Когда вы добавляете текстовую​​Чтобы использовать десятичные знаки​

     Применение специальной вставки в Microsoft Excel

  5. ​ функцию​ много вариантов преобразования​ части»​В окне специальной вставки​, после чего получаем​ части окна появится​ случай она их​ в себе формулы.​«Вставить функцию»​ программой, как текстовые​ они должны быть​ денежного формата, содержащее​​ с установленным текстовым​​ и (СЦЕПИТЬ() или​

Очистка содержимого транзитного диапазона в Microsoft Excel

​ расположено несколько чисел,​ строку к числу​ в числах, хранящихся​VALUE​ в Excel цифр,​​устанавливаем точку, а​​ выставляем переключатель в​ готовое преобразованное значение.​ возможность отрегулировать представление​ помечает, чтобы пользователь​ Выделяем эту область​, который размещен около​ выражения, а, следовательно,​ вписаны в элемент​

​ информацию о заработной​​ форматом данных. Также​ аперсанда &) выводим​

Способ 5: применение специальной вставки

​ то вышеуказанные формулы​ и при этом​ как текст, возможно,​(ДАТАЗНАЧ), преобразуйте эти​ которые записаны в​ в поле​ блоке​

  1. ​ Для того, чтобы​ числа: выставить количество​ обратил внимание. Но,​​ и жмем на​​ строки формул.​ и автосумма будет​ листа с общим​​ плате Иванова. Аналогично​​ в Excel можно​

    Копирование цифры 1 в Microsoft Excel

  2. ​ текстовую строку без​ работать не будут.​ хотите сохранить форматирование​ придется вводить эти​ цифры в числа:​ числовом варианте, в​«Разделитель разрядов»​​«Операция»​​ применить данную формулу​

    Переход в специальную вставку в Microsoft Excel

  3. ​ десятичных знаков после​ к сожалению, такие​ значок​​Запускается окно​​ равна нулю. Кроме​​ или числовым форматом.​​ производится расчет для​ использовать надстройку, выполняющую​​ букв (т.е. только​​ В этом случае​

    Специальная вставка в программе Microsoft Excel

  4. ​ этого числа, используйте​ числа с десятичными​Урок подготовлен для Вас​ текстовый формат и​— апостроф. Затем​в позицию​​ для всех других​​ запятой, установить разделителями​ пометки Эксель выдает​

Диапазон преобразован в число в помощью специальной вставки в Microsoft Excel

Способ 6: использование инструмента «Текст столбцами»

​«Копировать»​Мастера функций​ того, как видим,​Для начала рассмотрим различные​ остальных сотрудников. В​​ поиск чисел, отформатированных​​ числа), между числами​ можно предложить следующий​ функцию​ разделителями.​ командой сайта office-guru.ru​ в обратном направлении.​ делаем один щелчок​«Умножить»​ ячеек диапазона, используем​ между разрядами. После​ не всегда даже​, который расположен во​. В категории​ левый верхний угол​ варианты решения задачи​ результате получим:​ в качестве текста​ — 1 пробел;​ подход:​TEXT​При вводе номер, который​Источник: http://www.excel-easy.com/examples/text-to-numbers.html​ Выбор определенного способа​ по кнопке​

  1. ​. Вслед за этим​ маркер заполнения, который​ того, как настройка​​ тогда, когда цифры​​ вкладке​«Текстовые»​​ ячеек будет окрашен​​ конвертации чисел в​​Пример 3. Самолет вылетел​​ и последующее преобразование​

    Переход к инструменту Текст по столбцам в Microsoft Excel

  2. ​с помощью функции ПОИСК()​​скопируйте столбец с текстовыми​​(ТЕКСТ).​ начинается с нуля​Перевел: Антон Андронов​ зависит от многих​​«OK»​​ жмем на кнопку​ ранее был применен​ выполнена, жмем на​ представлены в текстовом​«Главная»​выделяем пункт​​ в зеленый цвет.​​ текстовый вид.​

    Первое окно Мастера текстов в Microsoft Excel

  3. ​ согласно расписанию в​ их в числовой​ находим начальные позиции​ строками, содержащие числа,​​Без применения функции​

    Второе окно Мастера текстов в Microsoft Excel

  4. ​ — например, кода​Автор: Антон Андронов​​ факторов. Прежде всего,​​.​«OK»​​ нами для функции​​ кнопку​

    Третье окно Мастера текстов в Microsoft Excel

  5. ​ виде, поэтому ниже​на ленте инструментов​«ТЕКСТ»​​ Это также является​Чаще всего пользователи выполняют​​ 13:40 и должен​ формат.​​ каждого числа;​​ в MS WORD;​TEXT​ продукта — Excel​​Примечание:​​ это поставленная задача.​

    Дополнительная настройка импорта текста в Microsoft Excel

  6. ​Возвращаемся в третье окно​​.​​ТЕКСТ​«OK»​​ описанный способ подходит​​ группе​

    Завершение работы в Мастере текста в Microsoft Excel

  7. ​. После этого кликаем​ косвенным признаком того,​ форматирование числовых выражений​ был совершить посадку​Чаще всего функция ЗНАЧЕН​с помощью функции ПСТР(),​нажмите​(ТЕКСТ) результат будет​ приведет к удалению​

Разделители приняли обычный формат в Microsoft Excel

Способ 7: применение макросов

​Мы стараемся как​ Ведь, например, быстро​Мастера текстов​После этого действия все​.​.​ не для всех​«Буфер обмена»​ по кнопке​ что элементы, в​ в текстовые через​ в конечном пункте​ используется для преобразования​ ЛЕВСИМВ(), ПРАВСИМВ() выводим​CTRL+H​ следующим:​ ноль по умолчанию.​

  1. ​ можно оперативнее обеспечивать​​ преобразовать текстовое выражение​​и жмем на​ значения выделенной области​​Теперь мы имеем диапазон,​​Теперь, как и в​ случаев.​​.​​«OK»​

    Переход в редактор макросов в Microsoft Excel

  2. ​ которых находятся цифры,​ контекстное меню.​ перелета в 17:20.​ результатов работы функций​


    ​ числа в отдельные​
    ​, т.е. вызовите инструмент​
    ​А с использованием функции​
    ​ Если это не​

    ​ вас актуальными справочными​ с иностранными разделителями​ кнопку​ будут преобразованы в​ который заполнен значениями​

    Редактор макросов в Microsoft Excel

  3. ​ случае преобразования числа​Выделяем ячейку, в которой​Далее, если мы хотим​​.​​ преобразованы в текстовый​Выделяем те элементы листа,​​ Во время полета​​ ПСТР и ЛЕВСИМВ​​ ячейки.​​ Найти и Заменить;​

    Переход к списку макросов в Microsoft Excel

  4. ​TEXT​ является вас не​ материалами на вашем​ в числовое можно​​«Готово»​​ числовые. Теперь при​ с формулами. Выделяем​​ в текст, нам​​ содержится зеленый индикатор​

    Окно макросов в Microsoft Excel

  5. ​ сохранить оба диапазона​Открывается окно аргументов оператора​ вариант отображения. Хотя​ в которых нужно​

Преобразование текста в число с помощью макросов выполнено в Microsoft Excel

​ произошел инцидент, в​​ (ПРАВСИМВ), однако для​Решение из файла примера​

​В поле Найти введите​(ТЕКСТ):​ устраивают, можно создать​ языке. Эта страница​ только использовав инструмент​.​ желании можно удалить​ его и жмем​ нужно прощелкать все​ о возможной ошибке.​ (исходный и преобразованный),​ТЕКСТ​ этот признак не​ преобразовать данные в​ связи которым рейс​ корректного отображения к​​ позволяет извлекать от​​ ^$ (любая буква)​Примечание:​ пользовательский числовой формат,​ переведена автоматически, поэтому​«Текст столбцами»​Как видим, после выполнения​ цифру​ на кнопку​ ячейки, установив в​ Кликаем по появившейся​ не снимаем выделение​

​. Данная функция имеет​

lumpics.ru

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

​ всегда является обязательным​ текст. Как видим,​ был задержан на​ результатам вычислений данных​ 2-х до 4-х​ или его выберите​Код​ который начинает Excel,​

Преобразуем текст в число в Excel

  1. ​ ее текст может​​. Второй фактор, который​​ данных действий числа​«1»​​«Копировать»​​ каждую из них​Преобразуем текст в число в Excel
  2. ​ пиктограмме.​ с области, которая​ следующий синтаксис:​​ и в некоторых​​ во вкладке​ определенное время. Самолет​Преобразуем текст в число в Excel
  3. ​ функций можно просто​ чисел из текстовых​ из меню (см.​#,##​ чтобы сохранить начального​​ содержать неточности и​​ влияет на выбор​ приняли привычный для​, которую мы использовали​во вкладке​

​ в целях конвертации.​​«Главная»​ после этого клавишу​ в нем значение​ по ней правой​

Преобразуем текст в число в Excel

​Открывшееся окно имеет два​ отсутствует.​​на панели инструментов​​ Необходимо определить время​

Преобразуем текст в число в Excel

​ Подробнее рассмотрим это​ 15 символов. При​​в поле Заменить на:​​ запятой в больших​ ввода или вставки​ нас важно, чтобы​ объемы и частота​ а это значит,​Ещё одним вариантом, при​​или применяем сочетание​​Enter​ «​

Преобразуем текст в число в Excel

​ кнопкой мыши. Происходит​ поля, которые соответствуют​
​Урок:​
​ в блоке​

​ задержки в часах​

office-guru.ru

Форматирование чисел в виде текста

​ в одном из​​ желании решение можно​ оставьте пустым (если​ числах. В русской​ коды продуктов 10​ эта статья была​ выполняемых преобразований. Например,​ что они одновременно​ котором можно преобразовать​ клавиш​.​Преобразовать в число»​ запуск контекстного списка​ данным аргументам:​Как изменить формат в​«Число»​ и минутах. Данные​ примеров.​ легко расширить на​ все числа в​ локализации Excel запятую​ значного на листе,​

​ вам полезна. Просим​ если вы часто​ были преобразованы из​ текст в числовой​Ctrl+C​После выполнения этих действий​.​ действий. Выбираем в​«Значение»​ Excel​в специальном поле​ о времени вылета,​​ большее количество символов​ строке нужно вывести​ необходимо заменить на​ Excel будет изменить​ вас уделить пару​ используете подобные преобразования,​

​ текстовых данных в​ вид, является применение​.​ все значения выбранного​В выделенном элементе данные​ нем позицию​и​

  1. ​Преобразовать число в текстовый​ отображается информация о​ расчетного и фактического​Пример 1. В таблицу​ и чисел.​

    ​ одним числом, т.е.​​ пробел.​ номера следующим 0784367998​ секунд и сообщить,​ имеет смысл произвести​ числовые.​ инструмента​

  2. ​Выделяем исходную область и​​ диапазона преобразуются в​​ тут же будут​​«Специальная вставка»​​«Формат»​ вид можно также​​ том, что данные​​ времени прибытия занесены​​ Excel были автоматически​​Совет:​

    ​ текстовая строка 123Филато11в6а будет​​Еще один пример с​​ для 784367998. В​​ помогла ли она​ запись макроса. И​Если вам часто приходится​«Текст столбцами»​

    Применение текстового формата к числам​ производим щелчок по​ нужный нам вид.​

​ преобразованы в числовой​​. Среди вариантов действий​

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

  • ​ преобразована в 123116)​ применением процентного формата:​ этом случае можно​ вам, с помощью​ третий фактор –​ преобразовывать большие области​. Его есть смысл​ ней правой кнопкой​Перевести текстовые данные в​ вид.​ в открывшемся списке​В поле​ ленте, в частности,​ формат, а значит,​ формата «Дата».​ о продуктах, содержащихся​ число из начала​ или введите пробел​Примечание:​ создать пользовательский числовой​ кнопок внизу страницы.​ индивидуальное удобство пользователя.​ данных из текстового​​ использовать тогда, когда​​ мыши. В активировавшемся​ числовые можно, воспользовавшись​Если подобных текстовых значений,​ выбираем​«Значение»​ использовав поле для​ цифры, вписанные в​Таблица имеет следующий вид:​ в ассортименте интернет-магазина.​ текстовой строки приведено​ (если в дальнейшем​Используйте​

  • ​ формат, состоящий из​ Для удобства также​Автор: Максим Тютюшев​ формата в числовой,​ вместо запятой в​ контекстном списке переходим​ специальным полем на​ которые следует преобразовать,​«Значения и форматы чисел»​нужно указать преобразовываемое​ показа формата, о​ них, воспринимаются программой,​Для решения задачи запишем​ Некоторые ячейки содержат​ решение соответствующей задачи.​ потребуется вывести числа​0​ кода​ приводим ссылку на​По умолчанию текст в​

  • ​ то имеется смысл​ качестве разделителя десятичных​ по пунктам​ ленте инструментов.​ не одно, а​.​ число или ссылку​ котором шел разговор​ как число.​ следующую формулу:​ как числовую, так​

support.office.com

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

​ В статье Извлекаем​ в отдельные ячейки);​, чтобы отобразить ближайшее​0000000000​ оригинал (на английском​ ячейке выравнивается по​ в этих целях​ знаков используется точка,​

Преобразуем числа в текст в Excel

  1. ​«Специальная вставка»​​Выделяем диапазон, который должен​​ множество, то в​Если же пользователь желает​​ на ячейку, в​​ выше.​Преобразуем числа в текст в Excel
  2. ​Кликаем правой кнопкой мыши​Примечание: функция ЗНАЧЕН использована​ и текстовую информацию,​Преобразуем числа в текст в Excel
  3. ​ число из середины​нажмите ОК, буквы будут​ целое значение. Используйте​, благодаря чему для​ языке) .​ левому краю, а​​ записать специальный макрос,​​ а в качестве​

​ для явного преобразования​​ поскольку используемый для​​ текстовой строки приведено​​ заменены пробелами или​0.0​ отображения всех цифр​Если необходимо, чтобы приложение​ числа – по​ который будет использоваться​

​ разделителя разрядов вместо​«Значения и форматы чисел»​

Преобразуем числа в текст в Excel

​ во вкладку​​ ускорить процедуру преобразования.​​ формата, то вместо​​ В нашем случае​ которых нужно преобразовать​​ в открывшемся меню​​ дат в числа​ выгрузки данных парсер​ решение соответствующей задачи.​​ просто убраны;​​для отображения числа​ десять кода продукта,​ Excel воспринимало некоторые​ правому. Этот пример​ при необходимости. Но​ пробела – апостроф.​

​.​«Главная»​

Преобразуем числа в текст в Excel

​Выделяем весь диапазон, в​​ указанного действия нужно​ это будет ссылка​​ в текстовый вид.​​ выбираем позицию​​ в коде времени​​ сработал некорректно. Необходимо​​Функция ЗНАЧЕН в Excel​​скопируйте столбец обратно в​ с одним знаком​

​ включая ведущими нулями​ типы чисел как​
​ научит вас преобразовывать​
​ для того, чтобы​

​ Этот вариант воспринимается​

office-guru.ru

Извлекаем в MS EXCEL число из конца текстовой строки

​Все данные вставлены в​на ленте. Кликаем​ котором находятся текстовые​ выделить именно его​

​ на первый элемент​ Находясь во вкладке​​«Формат ячеек…»​​ Excel. Фактически, записи​ выполнить подсчет общего​ выполняет операцию преобразования​
​ MS EXCEL.​
​ после запятой. Используйте​
​ в Excel. Дополнительные​

​ текст, можно применить​ текстовый ряд, представленный​ это выполнить, прежде​ в англоязычном Экселе,​ нужном нам виде.​

​ по полю с​ данные. Как видим,​ и произвести вставку​ обрабатываемого числового диапазона.​«Главная»​

​.​

​ «=ЗНАЧЕН(C2)-ЗНАЧЕН(B2)» и «C2-B2»​ числа товаров.​ строки в числовое​Если требуется вывести полученные​0.00​​ сведения об этой​​ текстовый формат вместо​

Несколько чисел в текстовой строке (через WORD)

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

  • ​В поле​кликаем по пиктограмме​В открывшемся окне форматирования​
  • ​ являются эквивалентными, поскольку​​Часть таблицы выглядит следующим​​ значение в тех​ числа в отдельные​
  • ​для двух знаков​ проблеме читайте в​ числового. Например, если​Выберите диапазон ячеек​ своей версии Экселя​

  • ​ в русскоязычной версии​ транзитный диапазон, в​ группе​ для всей области,​ который указан выше.​«Формат»​ в виде треугольника​ переходим во вкладку​ Excel выполняет неявное​ образом:​ случаях, где это​
  • ​ ячейки, то используйте​ после запятой и​ статье Создание или​
  • ​ используются номера кредитных​A1:A4​

​ включить макросы и​ этой программы все​ котором находится формула​«Число»​ а не для​В любом случае, в​нужно указать вариант​

Несколько чисел в текстовой строке (через формулы, все числа склеиваются в одно)

​ справа от поля,​«Число»​ преобразование. Прямое преобразование​Для расчета общего количества​ возможно. Данная функция​ инструмент Текст-по-столбцам (мастер​ т.д. В русской​ удаление пользовательского числового​ карт или другие​

  • ​и измените числовой​ панель разработчика, если​​ значения, которые содержат​​ двойного бинарного отрицания.​. Выбираем пункт​​ каждой ячейки в​​ выбранный диапазон будут​
  • ​ отображения результата. Например,​ в котором отображается​, если оно было​ имеет практический смысл​
  • ​ представленных 5 наименований​ возвращает число в​
  • ​ текстов) или материал​​ локализации Excel точку​​ формата с сохранением​ числовые коды, содержащие​ формат на​ это до сих​

​ указанные выше знаки,​ Для этого выделяем​«Числовой»​ отдельности. Щелкаем по​ вставлены данные в​ если мы введем​ формат. Оно расположено​ открыто в другом​

Несколько чисел в текстовой строке (через формулы, все числа размещаются в разные ячейки)

​ при использовании полученных​ продукции используем следующую​ случае удачно выполненного​ статьи Разнесение текстовых​ необходимо заменить на​ начальных нулей в​ 16 цифр или​General​

  • ​ пор не сделано.​ воспринимаются как текст.​ данную область, кликом​или​
  • ​ ней.​ текстовом виде. Если​«0»​ в блоке инструментов​ месте. В блоке​ значений в других​ формулу:​
  • ​ процесса преобразования или​ строк по столбцам.​ запятую.​
  • ​ числовых кодах.​ более, необходимо использовать​(Общий).​Переходим во вкладку​

​ Конечно, можно перебить​ правой кнопки мыши​«Общий»​Открывается уже знакомый нам​ же вы все-таки​, то текстовый вариант​«Число»​ настроек​ программных продуктах, не​Функция СУММ принимает числовые​

​ код ошибки #ЗНАЧ!,​​Если в текстовой строке​И еще один пример.​В некоторых случаях номера​ текстовый формат. Это​Числа, прописанные через апостроф,​«Разработчик»​ данные вручную, но​ вызываем контекстное меню​

excel2.ru

Функция ЗНАЧЕН в Excel для преобразования текста в число

​.​ список. Как и​ выбрали вставку в​ на выходе будет​.​«Числовые форматы»​ поддерживающих форматы даты​ значения и производит​ если преобразование текста​ расположено несколько чисел,​ Форматирование даты.​ может отформатирован и​

Примеры функции ЗНАЧЕН в Excel и особенности ее использования

​ вызвано тем, что​ расцениваются программой, как​

​. Жмем на значок​

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

​ в Excel используется​

  1. ​ текст. Выберите ячейку​ на ленте​ это займет значительное​ нем позицию​ раз описанным нами​ выбираем позицию​ ячейки, содержащие формулы,​ знаков, даже если​ форматирования выбираем пункт​«Текстовый»​В результате будет получено​ данном примере наименование​
  2. ​Данная функция имеет следующую​ чисел можно вывести​Используйте меньшее или​ как текст, который​ точность до 15​A5​«Visual Basic»​ количество времени, тем​«Очистить содержимое»​ способом каждую ячейку​«Преобразовать в число»​ можно очистить. Для​ в исходнике они​
  3. ​«Текстовый»​. Для сохранения изменений​ число в коде​ и количество единиц​ синтаксическую запись:​ каждый символ текстовой​ большее количество символов​ позже может привести​ цифр. Любые цифры​и удалите апостроф​, который размещен в​ более что существует​
  4. ​.​ преобразуемой области с​.​ этого выделяем их,​ были. Если мы​.​ жмем на кнопку​ времени Excel:​ некоторых товаров записаны​=ЗНАЧЕН(текст)​ строки в отдельную​m​

​ к проблемам с​

Примеры использования функции ЗНАЧЕН в Excel

​ после 15-й округляются​ вручную.​ группе​ возможность гораздо более​Кстати, для преобразования значений​ применением клавиш​Все данные массива будут​ кликаем правой кнопкой​ внесем​Далее, как и в​ «​Для получения искомого значения​ в одной строке.​

​Единственный аргумент — текст​ ячейку (см. файл​

Часть таблицы.

​(м),​ вычислениями или Фрукты​ до нуля, что,​Вместо того, чтобы выполнять​

​«Код»​ быстрого решения проблемы.​ данным методом совсем​F2​ преобразованы в указанный​ мыши и выбираем​«0,0»​ предыдущем способе, последовательно​OK»​ необходимо преобразовать формат​ Функция ПРАВСИМВ «отрезает»​ является обязательным для​ примера, лист Общий​d​ понятнее порядки сортировки.​ наверняка, будет неприемлемым.​ шаг 1 и​.​Выделяем фрагмент листа, содержимое​

​ не обязательно использовать​

Сложная формула.

​и​ вид.​ позицию​

Как преобразовать денежный формат в числовое значение

​, то результат будет​ устанавливаем курсор в​в нижней части​ данных ячейки в​ часть строки кроме​ заполнения. То есть,​ случай) для этого:​(д) и​ Это иногда происходит​Если число имеет текстовый​ шаг 2, прибавьте​Запускается стандартный редактор макросов.​ которого нужно преобразовать.​ исключительно двойное умножение​

​Enter​Как и для преобразования​

Пример 2.

​«Очистить содержимое»​ отображаться с одним​ каждый элемент диапазона​ окна.​ «Время»:​ двух последних символов,​ данная функция принимает​подсчитайте количество букв в​

​y​

​ при импорте или​ формат, это легко​ пустую ячейку к​ Вбиваем или копируем​ Переходим во вкладку​ на​.​

ЗНАЧЕН.

Функция ЗНАЧЕН и формат времени

​ данных из числового​.​ десятичным знаком, если​ двойным щелчком левой​Как видим, после данных​То есть, самолет опоздал​ отображающих числовое значение​ на вход текстовые​ текстовой строке (ячейка​(г), чтобы изменить​ копировании чисел из​ определить, поскольку число​ диапазону​ в него следующее​«Данные»​«-1»​Значения в диапазоне будут​ вида в текст,​На этом процедуру преобразования​«0,00»​

​ кнопки мыши или​

Таблица.

​ манипуляций в специальном​ на 1 час​

​ – количество товаров.​ данные, которые могут​А3​ внешний вид даты.​ базы данных или​ будет выровнено в​A1:A5​ выражение:​. На ленте инструментов​. Можно применять любое​ преобразованы из текстовых​ в Экселе существует​ можно считать оконченной.​, то с двумя,​ нажатием клавиши​

​ поле высвечивается информация​ и 53 минуты.​ С помощью функции​

получено число в коде времени.

​ быть представлены в​) с помощью функции​Урок подготовлен для Вас​ другого источника данных.​

формат Время.

​ ячейке по левому​. Таким образом Excel​Sub Текст_в_число()​

exceltable.com

​ в блоке​

С помощью функции ТЕКСТ можно изменить представление числа, применив к нему форматирование с кодами форматов. Это полезно в ситуации, когда нужно отобразить числа в удобочитаемом виде либо объединить их с текстом или символами.

Примечание: Функция ТЕКСТ преобразует числа в текст, что может затруднить их использование в дальнейших вычислениях. Рекомендуем сохранить исходное значение в одной ячейке, а функцию ТЕКСТ использовать в другой. Затем, если потребуется создать другие формулы, всегда ссылайтесь на исходное значение, а не на результат функции ТЕКСТ.

Синтаксис

ТЕКСТ(значение; формат)

Аргументы функции ТЕКСТ описаны ниже.

Имя аргумента

Описание

значение

Числовое значение, которое нужно преобразовать в текст.

формат

Текстовая строка, определяющая формат, который требуется применить к указанному значению.

Общие сведения

Самая простая функция ТЕКСТ означает следующее:

  • =ТЕКСТ(значение, которое нужно отформатировать; «код формата, который требуется применить»)

Ниже приведены популярные примеры, которые вы можете скопировать прямо в Excel, чтобы поэкспериментировать самостоятельно. Обратите внимание: коды форматов заключены в кавычки.

Формула

Описание

=ТЕКСТ(1234,567;«# ##0,00 ₽»)

Денежный формат с разделителем групп разрядов и двумя разрядами дробной части, например: 1 234,57 ₽. Обратите внимание: Excel округляет значение до двух разрядов дробной части.

=ТЕКСТ(СЕГОДНЯ();«ДД.ММ.ГГ»)

Сегодняшняя дата в формате ДД/ММ/ГГ, например: 14.03.12

=ТЕКСТ(СЕГОДНЯ();«ДДДД»)

Сегодняшний день недели, например: понедельник

=ТЕКСТ(ТДАТА();«ЧЧ:ММ»)

Текущее время, например: 13:29

=ТЕКСТ(0,285;«0,0 %»)

Процентный формат, например: 28,5 %

=ТЕКСТ(4,34; «# ?/?»)

Дробный формат, например: 4 1/3

=СЖПРОБЕЛЫ(ТЕКСТ(0,34;«# ?/?»))

Дробный формат, например: 1/3 Обратите внимание: функция СЖПРОБЕЛЫ используется для удаления начального пробела перед дробной частью.

=ТЕКСТ(12200000;«0,00E+00»)

Экспоненциальное представление, например: 1,22E+07

=ТЕКСТ(1234567898;«[<=9999999]###-####;(###) ###-####»)

Дополнительный формат (номер телефона), например: (123) 456-7898

=ТЕКСТ(1234;«0000000»)

Добавление нулей в начале, например: 0001234

=ТЕКСТ(123456;«##0° 00′ 00»»)

Пользовательский формат (широта или долгота), например: 12° 34′ 56»

Примечание: Функцию ТЕКСТ можно использовать для изменения форматирования, но это не единственный способ. Чтобы изменить форматирование без формулы, нажмите клавиши CTRL+1 (на компьютере Mac — Изображение значка кнопки команд в Mac+1), а затем в диалоговом окне Формат ячеек на вкладке Число выберите нужный формат.

Скачивание образцов

Предлагаем скачать книгу, в которой содержатся все примеры применения функции ТЕКСТ из этой статьи и несколько других. Вы можете воспользоваться ими или создать собственные коды форматов для функции ТЕКСТ.

Скачать примеры применения функции ТЕКСТ

Другие доступные коды форматов

Просмотреть другие доступные коды форматов можно в диалоговом окне Формат ячеек.

  1. Нажмите клавиши CTRL+1 (на компьютере Mac — Изображение значка кнопки команд в Mac+1), чтобы открыть диалоговое окно Формат ячеек.

  2. На вкладке Число выберите нужный формат.

  3. Выберите пункт (все форматы).

  4. Нужный код формата будет показан в поле Тип. В этом случае выделите всё содержимое поля Тип, кроме точки с запятой (;) и символа @. В примере ниже выделен и скопирован только код ДД.ММ.ГГГГ.

  5. Нажмите клавиши CTRL+C, чтобы скопировать код формата, а затем — кнопку Отмена, чтобы закрыть диалоговое окно Формат ячеек.

  6. Теперь осталось нажать клавиши CTRL+V, чтобы вставить код формата в функцию ТЕКСТ. Пример: =ТЕКСТ(B2;»ДД.ММ.ГГГГ«). Обязательно заключите скопированный код формата в кавычки («код формата»), иначе в Excel появится сообщение об ошибке.

Пример использования диалогового окна "Формат" > "Ячейки" > "Число" > "Другое" для получения строк формата.

Коды форматов по категориям

В примерах ниже показано, как применить различные числовые форматы к значениям следующим способом: открыть диалоговое окно Формат ячеек, выбрать пункт (все форматы) и скопировать нужный код формата в формулу с функцией ТЕКСТ.

Почему программа Excel удаляет нули в начале?

Excel воспринимает последовательность цифр, введенную в ячейку, как число, а не как цифровой код, например артикул или номер SKU. Чтобы сохранить нули в начале последовательностей цифр, перед вставкой или вводом значений примените к соответствующему диапазону ячеек текстовый формат. Выделите столбец или диапазон, в который нужно поместить значения, нажмите клавиши CTRL+1, чтобы открыть диалоговое окно Формат ячеек, и выберите на вкладке Число пункт Текстовый. Теперь программа Excel не будет удалять нули в начале.

Если вы уже ввели данные и Excel удалил начальные нули, вы можете снова добавить их с помощью функции ТЕКСТ. Создайте ссылку на верхнюю ячейку со значениями и используйте формат =ТЕКСТ(значение;»00000″), где число нулей представляет нужное количество символов. Затем скопируйте функцию и примените ее к остальной части диапазона.

Примеры использования функции ТЕКСТ для добавления начальных нулей:  =ТЕКСТ(A2;"00000")

Если по какой-либо причине потребуется преобразовать текстовые значения обратно в числа, можно умножить их на 1 (например: =D4*1) или воспользоваться двойным унарным оператором (—), например: =—D4.

В Excel группы разрядов разделяются пробелом, если код формата содержит пробел, окруженный знаками номера (#) или нулями. Например, если используется код формата «# ###», число 12200000 отображается как 12 200 000.

Пробел после заполнителя цифры задает деление числа на 1000. Например, если используется код формата «# ###,0 «, число 12200000 отображается в Excel как 12 200,0.

Примеры функции ТЕКСТ с разделителем групп разрядов

Примечания: 

  • Разделитель групп разрядов зависит от региональных параметров. Для России это пробел, но в других странах и регионах может использоваться запятая или точка.

  • Разделитель групп разрядов можно применять в числовых, денежных и финансовых форматах.

Ниже показаны примеры стандартных числовых (только с разделителем групп разрядов и десятичными знаками), денежных и финансовых форматов. В денежном формате можно добавить нужное обозначение денежной единицы, и значения будут выровнены по нему. В финансовом формате символ рубля располагается в ячейке справа от значения (если выбрать обозначение доллара США, то эти символы будут выровнены по левому краю ячеек, а значения — по правому). Обратите внимание на разницу между кодами денежных и финансовых форматов: в финансовых форматах для отделения символа денежной единицы от значения используется звездочка (*).

Примеры функции ТЕКСТ с числовыми, денежными и финансовыми форматами

Чтобы получить код формата для определенной денежной единицы, сначала нажмите клавиши CTRL+1 (на компьютере Mac — Изображение значка кнопки команд в Mac+1) и выберите нужный формат, а затем в раскрывающемся списке Обозначение выберите символ.

Выбор обозначения денежной единицы в диалоговом окне "Формат ячеек"

После этого в разделе Числовые форматы слева выберите пункт (все форматы) и скопируйте код формата вместе с обозначением денежной единицы.

Функция ТЕКСТ — пользовательский денежный формат с обозначением денежной единицы

Примечание: Функция ТЕКСТ не поддерживает форматирование с помощью цвета. Если скопировать в диалоговом окне «Формат ячеек» код формата, в котором используется цвет, например «# ##0,00 ₽;[Красный]# ##0,00 ₽», то функция ТЕКСТ воспримет его, но цвет отображаться не будет.

Способ отображения дат можно изменять, используя сочетания символов «Д» (для дня), «М» (для месяца) и «Г» (для года).

Коды форматов для месяца, дня и года

В функции ТЕКСТ коды форматов используются без учета регистра, поэтому допустимы символы «М» и «м», «Д» и «д», «Г» и «г».

Способ отображения времени можно изменить с помощью сочетаний символов «Ч» (для часов), «М» (для минут) и «С» (для секунд). Кроме того, для представления времени в 12-часовом формате можно использовать символы «AM/PM».

Форматы времени (часы, минуты и секунды)

Если не указывать символы «AM/PM», время будет отображаться в 24-часовом формате.

В функции ТЕКСТ коды форматов используются без учета регистра, поэтому допустимы символы «Ч» и «ч», «М» и «м», «С» и «с», «AM/PM» и «am/pm».

Для отображения десятичных значений можно использовать процентные (%) форматы.

Коды форматов для процентов

Десятичные числа можно отображать в виде дробей, используя коды форматов вида «?/?».

Коды форматов для дробей

Экспоненциальное представление — это способ отображения значения в виде десятичного числа от 1 до 10, умноженного на 10 в некоторой степени. Этот формат часто используется для краткого отображения больших чисел.

Коды форматов для экспоненциального представления

В Excel доступны четыре дополнительных формата:

  • «Почтовый индекс» («00000»);

  • «Индекс + 4» («00000-0000»);

  • «Номер телефона» («[<=9999999]###-####;(###) ###-####»);

  • «Табельный номер» («000-00-0000»).

Дополнительные форматы для функции ТЕКСТ

Дополнительные форматы зависят от региональных параметров. Если же дополнительные форматы недоступны для вашего региона или не подходят для ваших нужд, вы можете создать собственный формат, выбрав в диалоговом окне Формат ячеек пункт (все форматы).

Типичный сценарий

Функция ТЕКСТ редко используется сама по себе, а чаще применяется в сочетании с чем-то еще. Предположим, что вы хотите объединить текст и числовое значение, например, чтобы получить строку «Отчет напечатан 14.03.12» или «Еженедельный доход: 66 348,72 ₽». Такие строки можно ввести вручную, но суть в том, что Excel может сделать это за вас. К сожалению, при объединении текста и форматированных чисел, например дат, значений времени, денежных сумм и т. п., Excel убирает форматирование, так как неизвестно, в каком виде нужно их отобразить. Здесь пригодится функция ТЕКСТ, ведь с ее помощью можно принудительно отформатировать числа, задав нужный код формата, например «ДД.ММ.ГГГГ» для дат.

В примере ниже показано, что происходит, если попытаться объединить текст и число, не применяя функцию ТЕКСТ. Мы используем амперсанд (&) для сцепления текстовой строки, пробела (» «) и значения: =A2&» «&B2.

Пример объединения текста без функции ТЕКСТ

Вы видите, что значение даты, взятое из ячейки B2, не отформатировано. В следующем примере показано, как применить нужное форматирование с помощью функции ТЕКСТ.

Пример объединения текста с помощью функции ТЕКСТ

Вот обновленная формула:

  • ячейка C2:=A2&» «&ТЕКСТ(B2;»дд.мм.гггг») — формат даты.

Вопросы и ответы

Да, вы можете использовать функции ПРОПИСН, СТРОЧН и ПРОПНАЧ. Например, формула =ПРОПИСН(«привет») возвращает результат «ПРИВЕТ».

Да, но для этого необходимо выполнить несколько действий. Сначала выделите нужные ячейки и нажмите клавиши CTRL+1, чтобы открыть диалоговое окно Формат ячеек. Затем на вкладке Выравнивание в разделе «Отображение» установите флажок Переносить по словам. После этого добавьте в функцию ТЕКСТ код ASCII СИМВОЛ(10) там, где нужен разрыв строки. Вам может потребоваться настроить ширину столбца, чтобы добиться нужного выравнивания.

Пример использования функций ТЕКСТ и СИМВОЛ(10) для вставки разрыва строки: ="Сегодня "&СИМВОЛ(10)&ТЕКСТ(СЕГОДНЯ();"ММ.ДД.ГГ")

В этом примере использована формула =»Сегодня: «&СИМВОЛ(10)&ТЕКСТ(СЕГОДНЯ();»ДД.ММ.ГГ»).

Это экспоненциальное представление числа. Excel автоматически приводит к такому виду числа длиной более 12 цифр, если к ячейкам применен формат Общий, и числа длиннее 15 цифр, если выбран формат Числовой. Если вы вводите длинные цифровые строки, но не хотите, чтобы они отображались в таком виде, то сначала примените к соответствующим ячейкам формат Текстовый.

См. также

Создание и удаление пользовательских числовых форматов

Преобразование чисел из текстового формата в числовой

Функции Excel (по категориям)

Содержание

  • Конвертация числа в текстовый вид
    • Способ 1: форматирование через контекстное меню
    • Способ 2: инструменты на ленте
    • Способ 3: использование функции
  • Конвертация текста в число
    • Способ 1: преобразование с помощью значка об ошибке
    • Способ 2: конвертация при помощи окна форматирования
    • Способ 3: конвертация посредством инструментов на ленте
    • Способ 4: применение формулы
    • Способ 5: применение специальной вставки
    • Способ 6: использование инструмента «Текст столбцами»
    • Способ 7: применение макросов
  • Вопросы и ответы

Текст в числа и наоборот в Microsoft Excel

Одной из частых задач, с которыми сталкиваются пользователи программы Эксель, является преобразования числовых выражений в текстовый формат и обратно. Этот вопрос часто заставляет потратить на решение много времени, если юзер не знает четкого алгоритма действий. Давайте разберемся, как можно решить обе задачи различными способами.

Конвертация числа в текстовый вид

Все ячейки в Экселе имеют определенный формат, который задает программе, как ей рассматривать то или иное выражение. Например, даже если в них будут записаны цифры, но формат выставлен текстовый, то приложение будет рассматривать их, как простой текст, и не сможет проводить с такими данными математические вычисления. Для того, чтобы Excel воспринимал цифры именно как число, они должны быть вписаны в элемент листа с общим или числовым форматом.

Для начала рассмотрим различные варианты решения задачи конвертации чисел в текстовый вид.

Способ 1: форматирование через контекстное меню

Чаще всего пользователи выполняют форматирование числовых выражений в текстовые через контекстное меню.

  1. Выделяем те элементы листа, в которых нужно преобразовать данные в текст. Как видим, во вкладке «Главная» на панели инструментов в блоке «Число» в специальном поле отображается информация о том, что данные элементы имеют общий формат, а значит, цифры, вписанные в них, воспринимаются программой, как число.
  2. Общий формат в Microsoft Excel

  3. Кликаем правой кнопкой мыши по выделению и в открывшемся меню выбираем позицию «Формат ячеек…».
  4. Переход в окно форматирования в Microsoft Excel

  5. В открывшемся окне форматирования переходим во вкладку «Число», если оно было открыто в другом месте. В блоке настроек «Числовые форматы» выбираем позицию «Текстовый». Для сохранения изменений жмем на кнопку «OK» в нижней части окна.
  6. Окно форматирования в Microsoft Excel

  7. Как видим, после данных манипуляций в специальном поле высвечивается информация о том, что ячейки были преобразованы в текстовый вид.
  8. Ячейки преобоазованы в текстовый формат в Microsoft Excel

  9. Но если мы попытаемся подсчитать автосумму, то она отобразится в ячейке ниже. Это означает, что преобразование было совершено не полностью. В этом и заключается одна из фишек Excel. Программа не дает завершить преобразование данных наиболее интуитивно понятным способом.
  10. Автосумма в Microsoft Excel

  11. Чтобы завершить преобразование, нам нужно последовательно двойным щелчком левой кнопки мыши поместить курсор в каждый элемент диапазона в отдельности и нажать на клавишу Enter. Чтобы упростить задачу вместо двойного щелчка можно использовать нажатие функциональной клавиши F2.
  12. Преобразование числа в текст в Microsoft Excel

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

Автосумма равна 0 в Microsoft Excel

Урок: Как изменить формат в Excel

Способ 2: инструменты на ленте

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

  1. Выделяем элементы, данные в которых нужно преобразовать в текстовый вид. Находясь во вкладке «Главная» кликаем по пиктограмме в виде треугольника справа от поля, в котором отображается формат. Оно расположено в блоке инструментов «Число».
  2. Переход к форматированию на ленте в Microsoft Excel

    Lumpics.ru

  3. В открывшемся перечне вариантов форматирования выбираем пункт «Текстовый».
  4. Выбор текстового формата в Microsoft Excel

  5. Далее, как и в предыдущем способе, последовательно устанавливаем курсор в каждый элемент диапазона двойным щелчком левой кнопки мыши или нажатием клавиши F2, а затем щелкаем по клавише Enter.

Данные преобразовываются в текстовый вариант.

Способ 3: использование функции

Ещё одним вариантом преобразования числовых данных в тестовые в Экселе является применение специальной функции, которая так и называется – ТЕКСТ. Данный способ подойдёт, в первую очередь, если вы хотите перенести числа как текст в отдельный столбец. Кроме того, он позволит сэкономить время на преобразовании, если объем данных слишком большой. Ведь, согласитесь, что перещелкивать каждую ячейку в диапазоне, насчитывающем сотни или тысячи строк – это не самый лучший выход.

  1. Устанавливаем курсор в первый элемент диапазона, в котором будет выводиться результат преобразования. Щелкаем по значку «Вставить функцию», который размещен около строки формул.
  2. Переход в Мастер функций в Microsoft Excel

  3. Запускается окно Мастера функций. В категории «Текстовые» выделяем пункт «ТЕКСТ». После этого кликаем по кнопке «OK».
  4. Переход к аргументам функции ТЕКСТ в Microsoft Excel

  5. Открывается окно аргументов оператора ТЕКСТ. Данная функция имеет следующий синтаксис:

    =ТЕКСТ(значение;формат)

    Открывшееся окно имеет два поля, которые соответствуют данным аргументам: «Значение» и «Формат».

    В поле «Значение» нужно указать преобразовываемое число или ссылку на ячейку, в которой оно находится. В нашем случае это будет ссылка на первый элемент обрабатываемого числового диапазона.

    В поле «Формат» нужно указать вариант отображения результата. Например, если мы введем «0», то текстовый вариант на выходе будет отображаться без десятичных знаков, даже если в исходнике они были. Если мы внесем «0,0», то результат будет отображаться с одним десятичным знаком, если «0,00», то с двумя, и т.д.

    После того, как все требуемые параметры введены, щелкаем по кнопке «OK».

  6. Аргументы функции ТЕКСТ в Microsoft Excel

  7. Как видим, значение первого элемента заданного диапазона отобразилось в ячейке, которую мы выделили ещё в первом пункте данного руководства. Для того, чтобы перенести и другие значения, нужно скопировать формулу в смежные элементы листа. Устанавливаем курсор в нижний правый угол элемента, который содержит формулу. Курсор преобразуется в маркер заполнения, имеющий вид небольшого крестика. Зажимаем левую кнопку мыши и протаскиваем по пустым ячейкам параллельно диапазону, в котором находятся исходные данные.
  8. Маркер заполнения в Microsoft Excel

  9. Теперь весь ряд заполнен требуемыми данными. Но и это ещё не все. По сути, все элементы нового диапазона содержат в себе формулы. Выделяем эту область и жмем на значок «Копировать», который расположен во вкладке «Главная» на ленте инструментов группе «Буфер обмена».
  10. Копирование в Microsoft Excel

  11. Далее, если мы хотим сохранить оба диапазона (исходный и преобразованный), не снимаем выделение с области, которая содержит формулы. Кликаем по ней правой кнопкой мыши. Происходит запуск контекстного списка действий. Выбираем в нем позицию «Специальная вставка». Среди вариантов действий в открывшемся списке выбираем «Значения и форматы чисел».
    Специальная вставка в Microsoft Excel

    Если же пользователь желает заменить данные исходного формата, то вместо указанного действия нужно выделить именно его и произвести вставку тем же способом, который указан выше.

  12. Специальная вставка в исходный диапазон в Microsoft Excel

  13. В любом случае, в выбранный диапазон будут вставлены данные в текстовом виде. Если же вы все-таки выбрали вставку в исходную область, то ячейки, содержащие формулы, можно очистить. Для этого выделяем их, кликаем правой кнопкой мыши и выбираем позицию «Очистить содержимое».

Очистка содержимого в Microsoft Excel

На этом процедуру преобразования можно считать оконченной.

Урок: Мастер функций в Excel

Конвертация текста в число

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

Способ 1: преобразование с помощью значка об ошибке

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

  1. Выделяем ячейку, в которой содержится зеленый индикатор о возможной ошибке. Кликаем по появившейся пиктограмме.
  2. Значок об ошибке в Microsoft Excel

  3. Открывается список действий. Выбираем в нем значение «Преобразовать в число».
  4. Преобразование в число в Microsoft Excel

  5. В выделенном элементе данные тут же будут преобразованы в числовой вид.

Значение в ячейке преобразовано в число в Microsoft Excel

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

  1. Выделяем весь диапазон, в котором находятся текстовые данные. Как видим, пиктограмма появилась одна для всей области, а не для каждой ячейки в отдельности. Щелкаем по ней.
  2. Пиктограмма для диапазона в Microsoft Excel

  3. Открывается уже знакомый нам список. Как и в прошлый раз, выбираем позицию «Преобразовать в число».

преобразование в число диапазона в Microsoft Excel

Все данные массива будут преобразованы в указанный вид.

Преобразование в число выполнено в Microsoft Excel

Способ 2: конвертация при помощи окна форматирования

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

  1. Выделяем диапазон, содержащий цифры в текстовом варианте. Кликаем правой кнопкой мыши. В контекстном меню выбираем позицию «Формат ячеек…».
  2. Переход к окну форматирования в Microsoft Excel

  3. Выполняется запуск окна форматирования. Как и в предыдущий раз, переходим во вкладку «Число». В группе «Числовые форматы» нам нужно выбрать значения, которые позволят преобразовать текст в число. К ним относится пункты «Общий» и «Числовой». Какой бы из них вы не выбрали, программа будет расценивать цифры, введенные в ячейку, как числа. Производим выбор и жмем на кнопку. Если вы выбрали значение «Числовой», то в правой части окна появится возможность отрегулировать представление числа: выставить количество десятичных знаков после запятой, установить разделителями между разрядами. После того, как настройка выполнена, жмем на кнопку «OK».
  4. Окно форматирования в программе Microsoft Excel

  5. Теперь, как и в случае преобразования числа в текст, нам нужно прощелкать все ячейки, установив в каждую из них курсор и нажав после этого клавишу Enter.

Прощелкивание ячеек в Microsoft Excel

После выполнения этих действий все значения выбранного диапазона преобразуются в нужный нам вид.

Способ 3: конвертация посредством инструментов на ленте

Перевести текстовые данные в числовые можно, воспользовавшись специальным полем на ленте инструментов.

  1. Выделяем диапазон, который должен подвергнуться трансформации. Переходим во вкладку «Главная» на ленте. Кликаем по полю с выбором формата в группе «Число». Выбираем пункт «Числовой» или «Общий».
  2. Форматирование текстового формата в числовой через ленту в Microsoft Excel

  3. Далее прощелкиваем уже не раз описанным нами способом каждую ячейку преобразуемой области с применением клавиш F2 и Enter.

Прощелкивание для трансформации в числовой формат в Microsoft Excel

Значения в диапазоне будут преобразованы из текстовых в числовые.

Способ 4: применение формулы

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

  1. В пустой ячейке, расположенной параллельно первому элементу диапазона, который следует преобразовать, ставим знак «равно» (=) и двойной символ «минус» (—). Далее указываем адрес первого элемента трансформируемого диапазона. Таким образом, происходит двойное умножение на значение «-1». Как известно, умножение «минус» на «минус» дает «плюс». То есть, в целевой ячейке мы получаем то же значение, которое было изначально, но уже в числовом виде. Даная процедура называется двойным бинарным отрицанием.
  2. Формула в Microsoft Excel

  3. Жмем на клавишу Enter, после чего получаем готовое преобразованное значение. Для того, чтобы применить данную формулу для всех других ячеек диапазона, используем маркер заполнения, который ранее был применен нами для функции ТЕКСТ.
  4. Маркер заполнения для формулы двойного бинарного отрицания в Microsoft Excel

  5. Теперь мы имеем диапазон, который заполнен значениями с формулами. Выделяем его и жмем на кнопку «Копировать» во вкладке «Главная» или применяем сочетание клавиш Ctrl+C.
  6. Коопирование числовых значений в Microsoft Excel

  7. Выделяем исходную область и производим щелчок по ней правой кнопкой мыши. В активировавшемся контекстном списке переходим по пунктам «Специальная вставка» и «Значения и форматы чисел».
  8.  Применение специальной вставки в Microsoft Excel

  9. Все данные вставлены в нужном нам виде. Теперь можно удалить транзитный диапазон, в котором находится формула двойного бинарного отрицания. Для этого выделяем данную область, кликом правой кнопки мыши вызываем контекстное меню и выбираем в нем позицию «Очистить содержимое».

Очистка содержимого транзитного диапазона в Microsoft Excel

Кстати, для преобразования значений данным методом совсем не обязательно использовать исключительно двойное умножение на «-1». Можно применять любое другое арифметическое действие, которое не ведет к изменению значений (сложение или вычитание нуля, выполнение возведения в первую степень и т.д.)

Урок: Как сделать автозаполнение в Excel

Способ 5: применение специальной вставки

Следующий способ по принципу действия очень похож на предыдущий с той лишь разницей, что для его использования не нужно создавать дополнительный столбец.

  1. В любую пустую ячейку на листе вписываем цифру «1». Затем выделяем её и жмем на знакомый значок «Копировать» на ленте.
  2. Копирование цифры 1 в Microsoft Excel

  3. Выделяем область на листе, которую следует преобразовать. Кликаем по ней правой кнопкой мыши. В открывшемся меню дважды переходим по пункту «Специальная вставка».
  4. Переход в специальную вставку в Microsoft Excel

  5. В окне специальной вставки выставляем переключатель в блоке «Операция» в позицию «Умножить». Вслед за этим жмем на кнопку «OK».
  6. Специальная вставка в программе Microsoft Excel

  7. После этого действия все значения выделенной области будут преобразованы в числовые. Теперь при желании можно удалить цифру «1», которую мы использовали в целях конвертации.

Диапазон преобразован в число в помощью специальной вставки в Microsoft Excel

Способ 6: использование инструмента «Текст столбцами»

Ещё одним вариантом, при котором можно преобразовать текст в числовой вид, является применение инструмента «Текст столбцами». Его есть смысл использовать тогда, когда вместо запятой в качестве разделителя десятичных знаков используется точка, а в качестве разделителя разрядов вместо пробела – апостроф. Этот вариант воспринимается в англоязычном Экселе, как числовой, но в русскоязычной версии этой программы все значения, которые содержат указанные выше знаки, воспринимаются как текст. Конечно, можно перебить данные вручную, но если их много, это займет значительное количество времени, тем более что существует возможность гораздо более быстрого решения проблемы.

  1. Выделяем фрагмент листа, содержимое которого нужно преобразовать. Переходим во вкладку «Данные». На ленте инструментов в блоке «Работа с данными» кликаем по значку «Текст по столбцам».
  2. Переход к инструменту Текст по столбцам в Microsoft Excel

  3. Запускается Мастер текстов. В первом окне обратите внимание, чтобы переключатель формата данных стоял в позиции «С разделителями». По умолчанию он должен находиться в этой позиции, но проверить состояние будет не лишним. Затем кликаем по кнопке «Далее».
  4. Первое окно Мастера текстов в Microsoft Excel

  5. Во втором окне также оставляем все без изменений и жмем на кнопку «Далее».
  6. Второе окно Мастера текстов в Microsoft Excel

  7. А вот после открытия третьего окна Мастера текстов нужно нажать на кнопку «Подробнее».
  8. Третье окно Мастера текстов в Microsoft Excel

  9. Открывается окно дополнительной настройки импорта текста. В поле «Разделитель целой и дробной части» устанавливаем точку, а в поле «Разделитель разрядов» — апостроф. Затем делаем один щелчок по кнопке «OK».
  10. Дополнительная настройка импорта текста в Microsoft Excel

  11. Возвращаемся в третье окно Мастера текстов и жмем на кнопку «Готово».
  12. Завершение работы в Мастере текста в Microsoft Excel

  13. Как видим, после выполнения данных действий числа приняли привычный для русскоязычной версии формат, а это значит, что они одновременно были преобразованы из текстовых данных в числовые.

Разделители приняли обычный формат в Microsoft Excel

Способ 7: применение макросов

Если вам часто приходится преобразовывать большие области данных из текстового формата в числовой, то имеется смысл в этих целях записать специальный макрос, который будет использоваться при необходимости. Но для того, чтобы это выполнить, прежде всего, нужно в своей версии Экселя включить макросы и панель разработчика, если это до сих пор не сделано.

  1. Переходим во вкладку «Разработчик». Жмем на значок на ленте «Visual Basic», который размещен в группе «Код».
  2. Переход в редактор макросов в Microsoft Excel

  3. Запускается стандартный редактор макросов. Вбиваем или копируем в него следующее выражение:


    Sub Текст_в_число()
    Selection.NumberFormat = "General"
    Selection.Value = Selection.Value
    End Sub

    После этого закрываем редактор, выполнив нажатие стандартной кнопки закрытия в верхнем правом углу окна.

  4. Редактор макросов в Microsoft Excel

  5. Выделяем фрагмент на листе, который нужно преобразовать. Жмем на значок «Макросы», который расположен на вкладке «Разработчик» в группе «Код».
  6. Переход к списку макросов в Microsoft Excel

  7. Открывается окно записанных в вашей версии программы макросов. Находим макрос с наименованием «Текст_в_число», выделяем его и жмем на кнопку «Выполнить».
  8. Окно макросов в Microsoft Excel

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

Преобразование текста в число с помощью макросов выполнено в Microsoft Excel

Урок: Как создать макрос в Экселе

Как видим, существует довольно много вариантов преобразования в Excel цифр, которые записаны в числовом варианте, в текстовый формат и в обратном направлении. Выбор определенного способа зависит от многих факторов. Прежде всего, это поставленная задача. Ведь, например, быстро преобразовать текстовое выражение с иностранными разделителями в числовое можно только использовав инструмент «Текст столбцами». Второй фактор, который влияет на выбор варианта – это объемы и частота выполняемых преобразований. Например, если вы часто используете подобные преобразования, имеет смысл произвести запись макроса. И третий фактор – индивидуальное удобство пользователя.

Как преобразовать текст в число: функции изменения формата данных

Друзья, продолжаю рассказывать о распространенных задачах по обработке текстовых данных в Эксель. На этот раз обсудим преобразование текста в число и числа в текст. На первый взгляд, польза этих функций не очевидна. Но это обманчивое мнение, это полезнейшие функции. Прочтите этот пост, возможно именно его вам так давно не хватало!

Как преобразовать текст в число

Очень часто при экспорте из баз данных, числовые значения в таблицах заменяются текстом. Если число выражено явно, Excel сам преобразует его в текст, либо появится смарт-тег с командой «преобразовать в число». Но иногда, особенно при работе с датами, этого не происходит. Тогда придётся воспользоваться функцией ЗНАЧЕН(Строка).

Эта функция содержит один обязательный аргумент, указывающий на строку для преобразования. Если функция не сможет преобразовать строку в число, будет выведена ошибка #ЗНАЧ!

Применение функции ЗНАЧЕН

Как преобразовать число в текст

Другая задача, которая может доставить проблем – объединить строчные и числовые данные в одной строке. Представьте, что у вас есть значение в денежном формате и текст, которые нужно объединить. Обычные функции объединения дадут не тот результат, который нам хотелось бы:

Сцепление текста с числом без форматирования

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

Чтобы отформатировать число и сохранить, как текст, используем функцию ТЕКСТ(Число; Формат). Формат придётся задать вручную. О пользовательских форматах я расскажу в отдельной статье.

Давайте запишем формулу перевода числа в текст с указанными требованиями: =ТЕКСТ(A3;»$# #,00″) . Эту функцию можно «вложить» в формулу объединения и получить корректный результат. Функция ТЕКСТ записывает число в указанном формате и преобразует его в текст.

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

Совсем другое дело, теперь число записано так, как нам нужно. Ведь правда, это очень полезная функция?

Как проверить ячейку на содержимое

Еще одна текстовая функция – условная. Она проверяет строку на тип данных. Если в строке расположен текст – он выводится на экран. Если же это число, функция возвращает пустую строку. Синтаксис функции такой: =Т(Значение).

Функции преобразования форматов – очень важные и позволяют сделать результаты трудов комфортными и совершенными. Тренируйтесь в их использовании, чтобы показывать высший пилотаж в работе с текстом!

Это последний пост, рассказывающий о текстовых функциях Excel. А в следующей статье мы попробуем применить их на практике. А дальше — будем изучать работу с датами и временем. Заходите почитать, будет полезно!

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

При импорте файлов или копировании данных с числовыми значениями часто возникает проблема: число преобразуется в текст. В результате формулы не работают, вычисления становятся невозможными. Как это быстро исправить? Сначала посмотрим, как исправить ошибку без макросов.

Как преобразовать текст в число в Excel

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

Когда при импорте файлов или сбое в Excel числовой формат становится текстовым, в левом верхнем углу ячеек появляется зеленый треугольничек. Это знак ошибки. Ошибка также возникает, если перед числом поставить апостроф.

Способов преобразования текста в число существует несколько. Рассмотрим самые простые и удобные.

  1. Использовать меню кнопки «Ошибка». При выделении любой ячейки с ошибкой слева появляется соответствующий значок. Это и есть кнопка «Ошибка». Если навести на нее курсор, появится знак раскрывающегося меню (черный треугольник). Выделяем столбец с числами в текстовом формате. Раскрываем меню кнопки «Ошибка». Нажимаем «Преобразовать в число».
  2. Применить любые математические действия. Подойдут простейшие операции, которые не изменяют результат (умножение / деление на единицу, прибавление / отнимание нуля, возведение в первую степень и т.д.).
  3. Добавить специальную вставку. Здесь также применяется простое арифметическое действие. Но вспомогательный столбец создавать не нужно. В отдельной ячейке написать цифру 1. Скопировать ячейку в буфер обмена (с помощью кнопки «Копировать» или сочетания клавиш Ctrl + C). Выделить столбец с редактируемыми числами. В контекстном меню кнопки «Вставить» нажать «Специальная вставка». В открывшемся окне установить галочку напротив «Умножить». После нажатия ОК текстовый формат преобразуется в числовой.
  4. Удаление непечатаемых символов. Иногда числовой формат не распознается программой из-за невидимых символов. Удалим их с помощью формулы, которую введем во вспомогательный столбец. Функция ПЕЧСИМВ удаляет непечатаемые знаки. СЖПРОБЕЛЫ – лишние пробелы. Функция ЗНАЧЕН преобразует текстовый формат в числовой.
  5. Применение инструмента «Текст по столбцам». Выделяем столбец с текстовыми аргументами, которые нужно преобразовать в числа. На вкладке «Данные» находим кнопку «Текст по столбцам». Откроется окно «Мастера». Нажимаем «Далее». На третьем шаге обращаем внимание на формат данных столбца.

Последний способ подходит в том случае, если значения находятся в одном столбце.

Макрос «Текст – число»

Преобразовать числа, сохраненные как текст, в числа можно с помощью макроса.

Есть набор значений, сохраненных в текстовом формате:

Чтобы вставить макрос, на вкладке «Разработчик» находим редактор Visual Basic. Открывается окно редактора. Для добавления кода нажимаем F7. Вставляем следующий код:

Чтобы он «заработал», нужно сохранить. Но книга Excel должна быть сохранена в формате с поддержкой макросов.

Теперь возвращаемся на страницу с цифрами. Выделяем столбец с данными. Нажимаем кнопку «Макросы». В открывшемся окне – список доступных для данной книги макросов. Выбираем нужный. Жмем «Выполнить».

Цифры переместились вправо.

Следовательно, значения в ячейках «стали» числами.

Если в столбце встречаются аргументы с определенным числом десятичных знаков (например, 3,45), можно использовать другой макрос.

Таким образом, возникающую при импорте или копировании числовых данных ошибку легко устранить. Преобразовать текст в число можно разными способами (с помощью макросов и без них). Сделать это просто и быстро. А впоследствии с числовыми аргументами производятся все необходимые операции.

Преобразование чисел из текстового формата в числовой

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

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

1. Выделите столбец

Выделите столбец с такими ячейками. Если вы не хотите преобразовывать весь столбец, можно выбрать одну или несколько ячеек. Ячейки должны находиться в одном и том же столбце, иначе этот процесс не будет работать. (Если такие ячейки есть в нескольких столбцах, см. раздел «Другие способы преобразования» ниже.)

2. Нажмите эту кнопку

Кнопка «столбцы» обычно применяется для разделения столбцов, но ее также можно использовать для преобразования столбца текста в числа. На вкладке Данные нажмите кнопку Текст по столбцам.

3. Нажмите кнопку «Готово»

Остальные шаги мастера нужны для разделения текста на столбцы. Так как нам нужно только преобразовать текст, нажмите кнопку Готово, и Excel преобразует ячейки.

4. Задайте формат

Нажмите клавиши CTRL+1 (или +1 на Mac). Выберите нужный формат.

Примечание: Если вы по-прежнему видите формулы, которые не выводят числовые результаты, возможно, включен параметр Показать формулы. Откройте вкладку Формулы и отключите параметр Показать формулы.

Другие способы преобразования

С помощью функции ЗНАЧЕН можно возвращать числовое значение текста.

1. Вставьте новый столбец

Вставьте столбец рядом с ячейками, содержащими текст. В этом примере столбец E содержит числа, которые хранятся в виде текста. Столбец F является новым столбцом.

2. Примените функцию ЗНАЧЕН

В одной из ячеек нового столбца введите =ЗНАЧЕН() и укажите в скобках ссылку на ячейку, содержащую числа, которые хранятся в виде текста. В данном примере это ячейка E23.

3. Наведите указатель мыши

Теперь нужно заполнить формулу вниз. Вот как это сделать: Наведите указатель на правый нижний угол ячейки, чтобы он принял вид знака плюс (+).

4. Щелкните и перетащите вниз

Щелкните и перетащите вниз, чтобы добавить формулу в другие ячейки. После этого вы можете использовать новый столбец или скопировать и вставить новые значения в исходный столбец. Вот как это сделать: Выделите ячейки с новой формулой. Нажмите клавиши CTRL+C. Щелкните первую ячейку в исходном столбце. На вкладке Главная щелкните стрелку рядом с кнопкой Вставить и выберите пункт Специальная вставка > Значения.

Если указанные выше действия не дали результатов, попробуйте использовать этот метод, который подходит, если вы хотите преобразовать несколько столбцов текста.

Выделите пустую ячейку, в которой нет этой проблемы, введите в нее цифру 1 и нажмите клавишу ВВОД.

Нажмите клавиши CTRL+C, чтобы скопировать ячейку.

Выделите ячейки с числами, которые сохранены как текст.

На вкладке Главная щелкните Вставить и выберите пункт Специальная вставка.

Щелкните умножить и нажмите кнопку ОК. Excel умножит каждую ячейку на 1, при этом преобразовав текст в числа.

Нажмите клавиши CTRL+1 (или +1 на Mac). Выберите нужный формат.

Отключение зеленых треугольников

Можно сделать так, чтобы числа, хранящиеся как текст, не помечались зелеными треугольниками. Выберите Файл > Параметры > Формулы и снимите флажок Числа в текстовом формате.

Преобразование в ТЕКСТ в Excel. Бесплатные примеры и статьи.

Переводим число прописью в число цифрами в Excel

Преобразуем число из текстовой формы в обычное число из цифр: например, «сто пятьдесят три» преобразуем в 153.

Пользовательский ЧИСЛОвой формат в MS EXCEL (Функция ТЕКСТ())

Числовой пользовательский формат – это формат отображения числа задаваемый пользователем. Например, число 5647,22 можно отобразить как 005647 или, вообще в произвольном формате, например, +(5647)руб.22коп. Пользовательские форматы также можно использовать в функции ТЕКСТ() . Эта функция возвращает текстовое значение в нужном пользователю виде.

Название месяца прописью в MS EXCEL

Если в ячейке содержится дата или номер месяца, то с помощью формул или Формата ячейки можно вывести название месяца. Также решим обратную задачу: из текстового значения названия месяца получим его номер.

Отображение в MS EXCEL ЧИСЕЛ в формате миллионов и тысяч

Если ячейка содержит значение больше 1000, то часто не требуется указывать точное значение, а достаточно указать число тысяч или миллионов, один-два знака после запятой и соответственно сокращение: тыс. или млн.

Функция ТЕКСТ() в MS EXCEL

Функция ТЕКСТ( ) , английская версия TEXT(), преобразует число в текст и позволяет задать формат отображения с помощью специальных строк форматирования, например, формула =ТЕКСТ(100;»0,00 р.») вернет текстовую строку 100,00 р., а формула =ТЕКСТ(1;»#%») вернет текст (не число!) 100%. Эта функция полезна, если числа требуется отобразить в более удобном формате или если требуется объединить числа с текстом или символами.

Функция ФИКСИРОВАННЫЙ() в MS EXCEL

Функция ФИКСИРОВАННЫЙ( ) , английская версия FIXED(), округляет число до заданного количества десятичных цифр и возвращает результат в виде текста.

Перевод текста в число или числа в текст при помощи функций Excel.

Зачастую при заполнении различных документов необходимо указанную в числовой форме денежную сумму прописывать в текстовом формате (например, в рублях). При оформлении большого числа документов это довольно сложно и требует больших трудозатрат. В «Эксель» предусмотрены несколько функций преобразования текста в число и обратно:

«ТЕКСТ», «РУБЛЬ» и «ЗНАЧЕН».

Рассмотрим отдельно каждую функцию.

Применение функции «ТЕКСТ».

  • Выбираем ячейку, в которую хотим поместить текстовое значение;
  • Вызываем мастер функций;
  • Выбираем функцию «ТЕКСТ»;
  • Указываем ячейку, из которой берем значение;
  • Обязательно указываем формат (формат можно выбрать, открыв меню «формат ячеек», вкладка – (все форматы)), можно поставить формат «Общий»;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в текстовом формате

Применение функции «РУБЛЬ».

  • Выбираем ячейку, в которую хотим поместить текстовое значение;
  • Вызываем мастер функций;
  • Выбираем функцию «РУБЛЬ»;
  • Указываем ячейку, из которой берем значение;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в текстовом формате с обозначением «руб.»

Применение функции «ЗНАЧЕН».

  • Выбираем ячейку, в которую хотим поместить значение в формате числа;
  • Вызываем мастер функций;
  • Выбираем функцию «ЗНАЧЕН»;
  • Указываем ячейку, из которой берем текстовое значение;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в числовом формате.

Часто возникает необходимость в написании чисел прописью (словами), например, записать число «123», как «Сто двадцать три» .

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

Функции преобразования типов данных в VBA Excel. Наименования функций, синтаксис, типы возвращаемых данных, диапазоны допустимых значений выражения-аргумента.

Синтаксис функций преобразования

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

Если аргумент, переданный в функцию, не входит в диапазон типа, в который преобразуются данные, происходит ошибка.

Функции преобразования типов

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

Функция Тип данных Диапазон значений аргумента
CBool Boolean Любое допустимое строковое или числовое выражение.
CByte Byte От 0 до 255.
CCur Currency От -922 337 203 685 477,5808 до 922 337 203 685 477,5807.
CDate Date Любое допустимое выражение даты.
CDbl Double От -1,79769313486231E308 до -4,94065645841247E-324 для отрицательных значений; от 4,94065645841247E-324 до 1,79769313486232E308 для положительных значений.
CDec Decimal 79 228 162 514 264 337 593 543 950 335 для чисел без десятичных знаков. Для чисел с 28 десятичными знаками диапазон составляет 7,9228162514264337593543950335. Наименьшим возможным числом, отличным от нуля, является число 0,0000000000000000000000000001.
CInt Integer От -32 768 до 32 767, дробная часть округляется.
CLng Long От -2 147 483 648 до 2 147 483 647, дробная часть округляется.
CSng Single От -3,402823E38 до -1,401298E-45 для отрицательных значений; от 1,401298E-45 до 3,402823E38 для положительных значений.
CStr String Результат, возвращаемый функцией CStr, зависит от аргумента Выражение.
CVar Variant Диапазон совпадает с типом Double  для числовых значений и с типом  String  для нечисловых значений.

Дополнительно для VBA7:

Функция Тип данных Диапазон значений аргумента
CLngLng LongLong От -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807, дробная часть округляется. Действительно только для 64-разрядных платформ.
CLngPtr LongPtr От -2 147 483 648 до 2 147 483 647 для 32-разрядных платформ, от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 для 64-разрядных платформ, дробная часть округляется в обоих типах систем.

Примеры преобразования типов

Функция CBool

Функция CBool используется для преобразования выражений в тип данных Boolean.

Dim a

a = CBool(10) ‘Результат: True

a = CBool(0) ‘Результат: False

a = CBool(«True») ‘Результат: True

a = CBool(«Test») ‘Результат: Error

Dim a, b, c

a = «Test1»

b = «Test2»

c = CBool(a = b) ‘Результат: False

c = CBool(a <> b) ‘Результат: True

Функция CByte

Функция CByte используется для преобразования выражений в тип данных Byte.

Dim a, b, c

a = 654

b = 3.36

c = a / b ‘Результат: 194,642857142857

c = CByte(c) ‘Результат: 195

c = a * b ‘Результат: 2197,44

c = CByte(c) ‘Результат: Error

Функция CCur

Функция CCur используется для преобразования выражений в тип данных Currency.

Dim a, b, c

a = 254.6598254

b = 569.2156843

c = a + b ‘Результат: 823,8755097

c = CCur(a + b) ‘Результат: 823,8755

Функция CDate

Функция CDate используется для преобразования выражений в тип данных Date. Она распознает форматы даты в соответствии с национальной настройкой системы.

Dim a As String, b As Date, c As Double

a = «28.01.2021»

b = CDate(a) ‘Результат: #28.01.2021#

c = CDbl(b) ‘Результат: 44224

Dim a

a = CDate(44298.63895) ‘Результат: #12.04.2021 15:20:05#

a = CDate(44298) ‘Результат: #12.04.2021#

a = CDate(0.63895) ‘Результат: #15:20:05#

Функция CDbl

Функция CDbl используется для преобразования выражений в тип данных Double.

Dim a As String, b As String, c As Double

a = «45,3695423»

b = «548955,756»

c = CDbl(a) + CDbl(b) ‘Результат: 549001,1255423

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

Функция CDec

Функция CDec используется для преобразования выражений в тип данных Decimal.

Dim a As String, b As Double, c

a = «5,9228162514264337593543950335»

b = 5.92281625142643

c = CDec(a) CDec(b) ‘Результат: 0,0000000000000037593543950335

Dim a As Double, b As String, c

a = 4.2643E14

b = CStr(a) ‘Результат: «4,2643E-14»

c = CDec(a) ‘Результат: 0,000000000000042643

Функция CInt

Функция CInt используется для преобразования выражений в тип данных Integer.

Dim a As String, b As Integer

a = «2355,9228»

b = CInt(a) ‘Результат: 2356

Функция CLng

Функция CLng используется для преобразования выражений в тип данных Long.

Dim a As Date, b As Long

a = CDate(44298.63895) ‘Результат: #12.04.2021 15:20:05#

b = CLng(a) ‘Результат: 44299

a = CDate(b) ‘Результат: #13.04.2021#

Функция CSng

Функция CSng используется для преобразования выражений в тип данных Single.

Dim a As String, b As Single

a = «3,2365625106»

b = CSng(a) ‘Результат: 3,236562

Функция CStr

Функция CStr используется для преобразования выражений в тип данных String.

Dim a As Single, b As String

a = 5106.23

b = CStr(a) ‘Результат: «5106,23»

Функция CVar

Функция CVar используется для преобразования выражений в тип данных Variant.

Dim a As Double, b As String, c

a = 549258.232546

b = «Новое сообщение»

c = CVar(a) ‘Результат: 549258,232546 (Variant/Double)

c = CVar(b) ‘Результат: «Новое сообщение» (Variant/String)

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


На чтение 2 мин Опубликовано 25.01.2015

Иногда мы аккуратно и старательно вводим данные в столбцах Excel и только к концу понимаем, что гораздо удобнее расположить их горизонтально, т.е. не в столбцах, а в строках. Да, ради этого стоило потрудиться, чтобы понять, что с самого начала надо было делать всё наоборот! Не спешите удалять проделанную работу и начинать всё заново. В Excel есть простой способ транспонировать всю таблицу целиком и сохранить структуру.

В этой статье мы приводим примеры и снимки экрана из версии Excel 2010 х64. В других версиях, начиная с Excel 2003, этот приём работает аналогично, но могут быть отличия в интерфейсе, структуре меню и диалоговых окнах.

Преобразовываем столбец в строку

Итак, у нас имеется вот такая таблица Excel:

Преобразовать столбец в строку в Excel

Данные расположены в двух столбцах, но мы хотим сделать таблицу горизонтальной и расположить те же данные, но в двух строках. Выделите ячейки, которые необходимо преобразовать. Затем щелкните правой кнопкой мыши и выберите пункт Copy (Копировать) или просто нажмите Ctrl+C.

Преобразовать столбец в строку в Excel

Теперь щелкните правой кнопкой мыши в ячейке, где требуется поместить преобразованные данные и выберите из контекстного меню пункт Paste Special (Специальная вставка):

Преобразовать столбец в строку в Excel

В открывшемся диалоговом окне Paste special (Специальная вставка) выберите пункт Transpose (Транспонировать) и нажмите ОК.

Преобразовать столбец в строку в Excel

Теперь Ваши столбцы преобразовались в строки!

Преобразовать столбец в строку в Excel

Точно таким же образом Вы можете преобразовать строки в столбцы. Вот небольшой пример:

Преобразовать столбец в строку в Excel

После копирования и специальной вставки с включенным параметром Transpose (Транспонировать) строки преобразовались в столбцы.

Преобразовать столбец в строку в Excel

Это отличный способ расположить информацию на листе Excel так, как Вам нужно.

Оцените качество статьи. Нам важно ваше мнение:

Функция ТЕКСТ предназначена для преобразования числового значения в текстовое с присвоением формата. Например, если ячейке с числовым значением 100 присвоить денежный формат 100,00 ₽, то для Excel данное значение остается все еще числом. Но если применить функцию =ТЕКСТ(100;»0,00 [$₽-419]»), тогда для Excel это будет уже текстовая строка со значением «100,00 ₽». И с ней уже нельзя выполнять математических операций.

Данная функция приносит пользу в тех случаях, когда необходимо показать числа в определенном формате или комбинировать числа и текст.

Примеры использования функции ТЕКСТ в Excel

Для функции ТЕКСТ следует указать 2 обязательных для заполнения аргументы:

  1. Значение – числовое значение, ссылка на числовое значение, формула, результат которой число.
  2. Формат – числовой формат из списка числовые форматы (CTRL+1).

Рассмотрим на примере работу функции в EXCEL. На складе имеется перечень товаров в количественном и суммовом выражении, таблица представлена ниже.

На складе.

Задача: Необходимо в столбе F сформировать номенклатуру ведомости с наименованием, ценой и валютой. Цены должны быть разбиты на разряды по тысячам для лучшей читабельности (например, 28 000).

Воспользуемся функцией ТЕКСТ. Щелкнем в ячейку G3 и нажмем мастер функций нажав на кнопку fx или комбинацию клавиш SHIFT+F3. В разделе категория выберем текстовые и найдем необходимую функцию.

SHIFT+F3.

В окне аргументов зададим следующие значения:

В окне аргументов.

Нажмем Ок и получим результат:

лучшей читабельности.

Все сумы приобрели денежный формат и стали удобочитаемыми в тексте номенклатуры вместе с наименованием товара. Стоит обратить внимание на то что изменение на денежный формат чисел в столбце E (Сумма) не позволило бы решить данную задачу так как Excel все равно воспринимает значения в денежном формате ячеек как числа:

денежный формат ошибочно.

Вот зачем нужна функция ТЕКСТ и ее весьма сложно заменить другими решениями.



Пример как сделать два значения в одной ячейке Excel

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

Первоначальная таблица с данными представлена ниже:

Первоначальная таблица с данными.

Задача: необходимо изменить внешний вид плана закупок на более информативный удобный для визуального анализа.

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

взгляд на сложную формулу.

Заполните этой формулой весь столбец скопировав ее в каждую соответственную ячейку.

В результате в я столбце D (план закупок) получатся текстовые значение с наглядным видом сумм и в скобках указаны доли (какая часть плана припадает на закупку одной позиции) для каждой суммы.

Благодаря такой формуле с функцией ТЕКСТ мы в одной и той же ячейке одновременно вводим сразу 2 значения: суммы в рублях и доли в процентах. Да еще и в двух соответствующих форматах данных.

Определение дня недели по дате в Excel

Торговому представителю необходимо посмотреть какие товары в какие дни недели он отвозил. Таблица перевозок представлена ниже:

Таблица перевозок.

Задача: необходимо дату преобразовать в день недели. Воспользуемся функцией ТЕКСТ.

Поставим курсор в ячейку D2. Введем знак равенства «=», а после него название функции ТЕКСТ. Далее заполняем аргументы:

ТЕКСТ.

В результате в столбце D отобразится соответствующий день недели для каждой даты.

Читайте также: Как перевести сумму или число прописью в Excel.

Таким образом, рассмотрев функцию ТЕКСТ можно сделать вывод, о том, что она помогает изменить представление числа, применив к нему форматирование с кодами форматов. Это полезно в ситуации, когда нужно отобразить числа в удобочитаемом виде либо объединить их с текстом или символами.

Эта статья содержит пояснения, сделанные в Microsoft Excel 2010, но она так же применима и для других популярных версий Microsoft Excel — 2007 и 2013.

Как преобразовать столбец в строку?

1. Выделяете столбец и выбираете в контекстном меню пункт «Копировать» (или нажимаете комбинацию горячих клавиш Ctrl + C).

Преобразование столбца в строку в Excel

2. Выбираете ячейку, с которой будет начинаться строка после преобразования.

3. Выбираете в контекстном меню пункт «Специальная вставка» (или нажимаете комбинацию горячих клавиш Ctrl + Alt + V).

4. Ставите чекбокс «транспонировать» и нажимаете ОК.

Специальная вставка транспонированного столбца

Важно! Столбец и строка не должны иметь общих ячеек.

Как преобразовать строку в столбец?

Следуете вышеописанным рекомендациям, только выбираете первоначально строку.

Как преобразовать несколько столбцов в строки или несколько строк в столбцы?

Следуете вышеописанным рекомендациям, только выбираете несколько столбцов или строк.


Обратите внимание, что при проведении преобразования можно одновременно в полной мере воспользоваться режимом специальной вставки, например, вставить значения ячеек.

На чтение 23 мин. Просмотров 18.4k.

VBA String Functions

Содержание

  1. Краткое руководство по текстовым функциям
  2. Введение
  3. Прочитайте это в первую очередь!
  4. Добавление строк
  5. Извлечение части строки
  6. Поиск в строке
  7. Удаление пробелов
  8. Длина строки
  9. Перевернуть текст
  10. Сравнение
  11. Сравнение строк с использованием сопоставления с шаблоном
  12. Заменить часть строки
  13. Преобразовать типы в строку (базовый)
  14. Преобразовать строку в число — CLng, CDbl, Val и т.д.
  15. Генерация строки элементов — функция строки
  16. Преобразовать регистр / юникод — StrConv, UCase, LCase
  17. Использование строк с массивами
  18. Форматирование строки
  19. Заключение

Краткое руководство по текстовым функциям

Текстовые операции Функции
Добавить две или более строки Format or «&»
Построить текст из массива Join
Сравнить StrComp or «=»
Сравнить — шаблон Like
Преобразовать в текст CStr, Str
Конвертировать текст в дату Просто: CDate 
Дополнительно: Format
Преобразовать текст в число Просто: CLng, CInt, CDbl, Val
Дополнительно: Format
Конвертировать в юникод, широкий, узкий StrConv
Преобразовать в верхний / нижний регистр StrConv, UCase, LCase
Извлечь часть текста Left, Right, Mid
Форматировать текст Format
Найти символы в тексте InStr, InStrRev
Генерация текста String
Получить длину строки Len
Удалить пробелы LTrim, RTrim, Trim
Заменить часть строки Replace
Перевернуть строку StrReverse
Разобрать строку в массив Split

Введение

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

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

Хорошей новостью является то, что VBA содержит множество функций, которые помогут вам легко выполнять эти задачи.

Эта статья содержит подробное руководство по использованию строки в VBA. Он объясняет строки в простых терминах с понятными примерами кода. Изложение в статье поможет легко использовать ее в качестве краткого справочного руководства.

Если вы собираетесь использовать строки часто, я рекомендую вам прочитать первый раздел, так как он относится ко многим функциям. В противном случае вы можете прочитать по порядку или просто перейти в нужный раздел.

Прочитайте это в первую очередь!

Следующие два пункта очень важны при работе со строковыми функциями VBA.

Исходная строка не изменяется

Важно помнить, что строковые функции VBA не изменяют исходную строку. Они возвращают новую строку с изменениями, внесенными функцией. Если вы хотите изменить исходную строку, вы просто назначаете результат исходной строке. См. Раздел «Извлечение части строки» для примеров.

Как использовать Compare

Некоторые строковые функции, такие как StrComp (), Instr () и т.д. имеют необязательный параметр Compare. Он работает следующим образом:

vbTextCompare: верхний и нижний регистры считаются одинаковыми

vbBinaryCompare: верхний и нижний регистр считаются разными

Следующий код использует функцию сравнения строк StrComp () для демонстрации параметра Compare.

Sub Comp1()

    ' Печатает 0  : Строки совпадают
    Debug.Print StrComp("АБВ", "абв", vbTextCompare)
    ' Печатает -1 : Строки не совпадают
    Debug.Print StrComp("АБВ", "абв", vbBinaryCompare)

End Sub

Вы можете использовать параметр Option Compare вместо того, чтобы каждый раз использовать этот параметр. Опция сравнения устанавливается в верхней части модуля. Любая функция, которая использует параметр Compare, примет этот параметр по умолчанию. Два варианта использования Option Compare:

  • Oпция Compare Text: делает vbTextCompare аргументом сравнения по умолчанию
Option Compare Text

Sub Comp2()
    ' Соответствие строк - использует vbCompareText в качестве 'аргумента сравнения
    Debug.Print StrComp("АБВ", "абв")
    Debug.Print StrComp("ГДЕ", "где")
End Sub
  • Опция Compare Binary: делает vbBinaryCompare аргументом сравнения по умолчанию.
Option Compare Binary

Sub Comp2()
    ' Строки не совпадают - использует vbCompareBinary в качестве 'аргумента сравнения
    Debug.Print StrComp("АБВ", "абв")
    Debug.Print StrComp("ГДЕ", "где")
End Sub

Если Option Compare не используется, то по умолчанию используется Option Compare Binary.

Теперь, когда вы понимаете эти два важных момента о строке, мы можем продолжить и посмотреть на строковые функции индивидуально.

Добавление строк

VBA String Functions - Smaller

Вы можете добавлять строки, используя оператор &. Следующий код показывает несколько примеров его использования.

Sub Dobavlenie()

    Debug.Print "АБВ" & "ГДЕ"
    Debug.Print "Иван" & " " & "Петров"
    Debug.Print "Длинный " & 22
    Debug.Print "Двойной " & 14.99
    Debug.Print "Дата " & #12/12/2015#

End Sub

В примере вы можете видеть, что различные типы, такие как даты и числа, автоматически преобразуются в строки. Вы можете увидеть оператор +, используемый для добавления строк. Разница в том, что этот оператор будет работать только со строковыми типами. Если вы попытаетесь использовать его с другим типом, вы получите ошибку.

 Это даст сообщение об ошибке: «Несоответствие типов»
    Debug.Print "Длинный " + 22

Если вы хотите сделать более сложное добавление строк, вы можете использовать функцию форматирования, описанную ниже.

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

Функции, обсуждаемые в этом разделе, полезны при базовом извлечении из строки. Для чего-то более сложного можете посмотреть раздел, как легко извлечь любую строку без использования VBA InStr.

Функция Параметры Описание Пример
Left строка, длина Вернуть
символы с
левой стороны
Left(«Иван
Петров»,4)
Right строка, длина Вернуть
символы с
правой
стороны
Right(«Иван
Петров»,5)
Mid строка, начало, длина Вернуть
символы из
середины
Mid(«Иван
Петров»,3,2)

Функции Left, Right и Mid используются для извлечения частей строки. Это очень простые в использовании функции. Left читает символы слева, Right справа и Mid от указанной вами начальной точки.

Sub IspLeftRightMid()

    Dim sCustomer As String
    sCustomer = "Иван Васильевич Петров"

    Debug.Print Left(sCustomer, 4)  '  Печатает: Иван
    Debug.Print Right(sCustomer, 6) '  Печатает: Петров

    Debug.Print Left(sCustomer, 15)  '  Печатает: Иван Васильевич
    Debug.Print Right(sCustomer, 17)  '  Печатает: Васильевич Петров

    Debug.Print Mid(sCustomer, 1, 4) ' Печатает: Иван
    Debug.Print Mid(sCustomer, 6, 10) ' Печатает: Васильевич
    Debug.Print Mid(sCustomer, 17, 6) ' Печатает: Петров

End Sub

Как упоминалось в предыдущем разделе, строковые функции VBA не изменяют исходную строку. Вместо этого они возвращают результат в виде новой строки.

В следующем примере вы увидите, что строка Fullname не была изменена после использования функции Left.

Sub PrimerIspolzovaniyaLeft()

    Dim Fullname As String
    Fullname = "Иван Петров"

    Debug.Print "Имя: "; Left(Fullname, 4)
    ' Исходная строка не изменилась
    Debug.Print "Полное имя: "; Fullname

 End Sub

Если вы хотите изменить исходную строку, вы просто присваиваете ей возвращаемое значение функции.

Sub IzmenenieStroki()

    Dim name As String
    name = "Иван Петров"

    ' Присвойте возвращаемую строку переменной имени
    name = Left(name, 4)

    Debug.Print "Имя: "; name

 End Sub

Поиск в строке

Функция Параметры Описание Пример
InStr Текст1,
текст2
Находит
положение
текста
InStr(«Иван
Петров»,»в»)
InStrRev Проверка
текста,
соответствие
текста
Находит
позицию
текста с конца
InStrRev(«Иван Петров»,»в»)

InStr и InStrRev — это функции VBA, используемые для поиска текста в тексте. Если текст поиска найден, возвращается позиция (с начала строки проверки) текста поиска. Когда текст поиска не найден, возвращается ноль. Если какой-либо текст имеет значение null, возвращается значение null.

InStr Описание параметров

InStr() Start[Необязат], String1, String2, Compare[Необязат]

  • Start [Необязательно — по умолчанию 1]: это число, указывающее начальную позицию поиска слева
  • String1: текст, в котором будем искать
  • String2: текст, который будем искать
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование InStr и примеры

InStr возвращает первую позицию в тексте, где найден данный текст. Ниже приведены некоторые примеры его использования.

Sub PoiskTeksta()

    Dim name As String
    name = "Иван Петров"

    ' Возвращает 3 - позицию от первой 
    Debug.Print InStr(name, "а")
    ' Возвращает 10 - позиция первого "а", начиная с позиции 4
    Debug.Print InStr(4, name, "а")
    ' Возвращает 8
    Debug.Print InStr(name, "тр")
    ' Возвращает 6
    Debug.Print InStr(name, "Петров")
    ' Возвращает 0 - текст "ССС" не найдет
    Debug.Print InStr(name, "ССС")

End Sub

InStrRev Описание параметров

InStrRev() StringCheck, StringMatch, Start[Необязат], Compare[Необязат]

  • StringCheck: текст, в котором будем искать
  • StringMatch: Текст, который будем искать
  • Start [Необязательно — по умолчанию -1]: это число, указывающее начальную позицию поиска справа
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование InStrRev и примеры

Функция InStrRev такая же, как InStr, за исключением того, что она ищет с конца строки. Важно отметить, что возвращаемая позиция является позицией с самого начала. Поэтому, если существует только один экземпляр элемента поиска, InStr () и InStrRev () будут возвращать одно и то же значение.

В следующем коде показаны некоторые примеры использования InStrRev.

Sub IspInstrRev()

    Dim name As String
    name = "Иван Петров"

    ' Обе возвращают 1 - позицию, только И
    Debug.Print InStr(name, "И")
    Debug.Print InStrRev(name, "И")

    ' Возвращает 11 - вторую в
    Debug.Print InStrRev(name, "в")
    ' Возвращает 3 - первую в с позиции 9
    Debug.Print InStrRev(name, "в", 9)

    ' Returns 1
    Debug.Print InStrRev(name, "Иван")

End Sub

Функции InStr и InStrRev полезны при работе с базовым поиском текста. Однако, если вы собираетесь использовать их для извлечения текста из строки, они могут усложнить задачу. Я написал о гораздо лучшем способе сделать это в своей статье Как легко извлечь любой текст без использования VBA InStr.

Удаление пробелов

Функция Параметры Описание Пример
LTrim Текст Убирает
пробелы слева
LTrim(» Иван «)
RTrim Текст Убирает
пробелы
справа
RTrim(» Иван «)
Trim Текст Убирает
пробелы слева и справа
Trim(» Иван «)

Функции Trim — это простые функции, которые удаляют пробелы в начале или конце строки.

Функции и примеры использования триммера Trim

  • LTrim удаляет пробелы слева от строки
  • RTrim удаляет пробелы справа от строки
  • Trim удаляет пробелы слева и справа от строки
Sub TrimStr()

    Dim name As String
    name = "  Иван Петров  "

    ' Печатает "Иван Петров  "
    Debug.Print LTrim(name)
    ' Печатает "  Иван Петров"
    Debug.Print RTrim(name)
    ' Печатает "Иван Петров"
    Debug.Print Trim(name)

End Sub

Длина строки

Функция Параметры Описание Пример
Len Текст Возвращает
длину строки
Len («Иван Петров»)

Len — простая функция при использовании со строкой. Она просто возвращает количество символов, которое содержит строка. Если используется с числовым типом, таким как long, он вернет количество байтов.

Sub IspLen()

    Dim name As String
    name = "Иван Петров"

    ' Печатает 11
    Debug.Print Len("Иван Петров")
    ' Печатает 3
    Debug.Print Len("АБВ")

    ' Печатает 4 с Long - это размер 4 байта
    Dim total As Long
    Debug.Print Len(total)

End Sub

Перевернуть текст

Функция Параметры Описание Пример
StrReverse Текст Перевернуть
текст
StrReverse
(«Иван
Петров»)

StrReverse — еще одна простая в использовании функция. Он просто возвращает данную строку с обратными символами.

Sub RevStr()

    Dim s As String
    s = "Иван Петров"
    ' Печатает: вортеП навИ
    Debug.Print StrReverse(s)

End Sub

Сравнение

Функция Параметры Описание Пример
StrComp Текст1, текст2 Сравнивает 2
текста
StrComp
(«Иван»,
«Иван»)

Функция StrComp используется для сравнения двух строк. Следующие подразделы описывают, как используется.

Описание параметров

StrComp()  String1, String2, Compare[Необязат]

  • String1: первая строка для сравнения
  • String2: вторая строка для сравнения
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

StrComp Возвращаемые значения

Возвращаемое значение Описание
0 Совпадение строк
-1 строка1 меньше строки2
1 строка1 больше строки2
Null если какая-либо строка равна нулю

Использование и примеры

Ниже приведены некоторые примеры использования функции StrComp.

Sub IspStrComp()

   ' Возвращает  0
   Debug.Print StrComp("АБВ", "АБВ", vbTextCompare)
   ' Возвращает 1
   Debug.Print StrComp("АБВГ", "АБВ", vbTextCompare)
   ' Возвращает -1
   Debug.Print StrComp("АБВ", "АБВГ", vbTextCompare)
   ' Returns Null
   Debug.Print StrComp(Null, "АБВГ", vbTextCompare)

End Sub

Сравнение строк с использованием операторов

Вы также можете использовать знак равенства для сравнения строк. Разница между сравнением equals и функцией StrComp:

  1. Знак равенства возвращает только true или false.
  2. Вы не можете указать параметр Compare, используя знак равенства — он использует настройку «Option Compare».  

Ниже приведены некоторые примеры использования equals для сравнения строк.

Option Compare Text

Sub CompareIspEquals()

    ' Возвращает true
    Debug.Print "АБВ" = "АБВ"
    ' Возвращает true, потому что «Сравнить текст» установлен выше
    Debug.Print "АБВ" = "абв"
    ' Возвращает false
    Debug.Print "АБВГ" = "АБВ"
    ' Возвращает false
    Debug.Print "АБВ" = "АБВГ"
    ' Возвращает null
    Debug.Print Null = "АБВГ"

End Sub

Сравнение строк с использованием сопоставления с шаблоном

Функция Параметры Описание Пример
Like Текст, шаблон проверяет, имеет
ли строка
заданный
шаблон
«abX» Like «??X»
«54abc5» Like «*abc#»
Знак Значение
? Любой одиночный символ
# Любая однозначная цифра (0-9)
* Ноль или более символов
[charlist] Любой символ в списке
[!charlist] Любой символ не в списке символов

Сопоставление с шаблоном используется для определения того, имеет ли строка конкретный образец символов. Например, вы можете проверить, что номер клиента состоит из 3 цифр, за которыми следуют 3 алфавитных символа, или в строке есть буквы XX, за которыми следует любое количество символов.

Если строка соответствует шаблону, возвращаемое значение равно true, в противном случае — false.

Сопоставление с образцом аналогично функции формата VBA в том смысле, что его можно использовать практически безгранично. В этом разделе я приведу несколько примеров, которые объяснят, как это работает. Это должно охватывать наиболее распространенные виды использования.

Давайте посмотрим на базовый пример с использованием знаков. Возьмите следующую строку шаблона.

[abc][!def]?#X*

 Давайте посмотрим, как работает эта строка

[abc] — символ, который является или a, b или c
[! def] — символ, который не является d, e или f
? любой символ
# — любая цифра
X — символ X
* следуют ноль или более символов

 Поэтому следующая строка действительна
apY6X

а — один из символов a,b,c
p — не один из символов d, e или f
Y — любой символ
6 — это цифра
Х — это буква Х

В следующих примерах кода показаны результаты различных строк с этим шаблоном.

Sub Shabloni()

    ' ИСТИНА
    Debug.Print 1; "apY6X" Like "[abc][!def]?#X*"
    ' ИСТИНА - любая комбинация символов после x действительна
    Debug.Print 2; "apY6Xsf34FAD" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - символ не из[abc]
    Debug.Print 3; "dpY6X" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - 2-й символ e находится в [def]
    Debug.Print 4; "aeY6X" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - A в позиции 4 не является цифрой
    Debug.Print 5; "apYAX" Like "[abc][!def]?#X*"
    ' ЛОЖЬ - символ в позиции 5 должен быть X
    Debug.Print 1; "apY6Z" Like "[abc][!def]?#X*"

End Sub

Реальный пример сопоставления с образцом

Чтобы увидеть реальный пример использования сопоставления с образцом, ознакомьтесь с Примером 3: Проверьте, допустимо ли имя файла.

Важное примечание о сопоставлении с образцом VBA

Оператор Like использует двоичное или текстовое сравнение на основе параметра Option Compare. Пожалуйста, смотрите раздел Сравнение для более подробной информации.

Заменить часть строки

Функция Параметры Описание Пример
Replace строка, найти, заменить,
начать,
считать,
сравнивать
Заменяет текст Replace
(«Ива»,»а»,»ан»)

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

Replace описание параметров

Replace()  Expression, Find, Replace, Start[Необязат], Count[Необязат], Compare[Необязат]

  • Expression: текст, в котором нужна замена символов
  • Find: текст для замены в строке выражения
  • Replace: строка для поиска замены текста поиска
  • Start [Необязательно — по умолчанию 1]: начальная позиция в строке
  • Count [Необязательно — по умолчанию -1]: количество замен. По умолчанию -1 означает все.
  • Compare как vbCompareMethod: см. Раздел «Сравнить» для получения более подробной информации.

Использование и примеры

В следующем коде показаны некоторые примеры использования функции замены.

Sub PrimeriReplace()

    ' Заменяет все знаки вопроса (?) на точку с запятой (;)
    Debug.Print Replace("A?B?C?D?E", "?", ";")
    ' Заменить Петров на Иванов
    Debug.Print Replace("Евгений Петров,Артем Петров", "Петров", "Иванов")
    ' Заменить AX на AB
    Debug.Print Replace("ACD AXC BAX", "AX", "AB")

End Sub

На выходе:

A;B;C;D;E
Евгений Иванов,Артем Иванов
ACD ABC BAB

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

Sub ReplaceCount()

    ' Заменяет только первый знак вопроса
    Debug.Print Replace("A?B?C?D?E", "?", ";", Count:=1)
    ' Заменяет первые три знака вопроса
    Debug.Print Replace("A?B?C?D?E", "?", ";", Count:=3)

End Sub

На выходе:

A;B?C?D?E
A;B;C;D?E

Необязательный параметр Start позволяет вам вернуть часть строки. Позиция, которую вы указываете с помощью Start, — это место, откуда начинается возврат строки. Он не вернет ни одной части строки до этой позиции, независимо от того, была ли произведена замена или нет.

Sub ReplacePartial()

    ' Использовать оригинальную строку из позиции 4
    Debug.Print Replace("A?B?C?D?E", "?", ";", Start:=4)
    ' Используйте оригинальную строку из позиции 8
    Debug.Print Replace("AA?B?C?D?E", "?", ";", Start:=8)
    ' Элемент не заменен, но по-прежнему возвращаются только последние '2 символа
    Debug.Print Replace("ABCD", "X", "Y", Start:=3)

End Sub

На выходе:

;C;D;E
;E
CD

Иногда вы можете заменить только заглавные или строчные буквы. Вы можете использовать параметр Compare для этого. Он используется во многих строковых функциях. Для получения дополнительной информации об этом проверьте раздел сравнения.

Sub ReplaceCase()

    ' Заменить только заглавные А
    Debug.Print Replace("AaAa", "A", "X", Compare:=vbBinaryCompare)
    ' Заменить все А
    Debug.Print Replace("AaAa", "A", "X", Compare:=vbTextCompare)

End Sub

На выходе:

XaXa
XXXX

Многократные замены

Если вы хотите заменить несколько значений в строке, вы можете вкладывать вызовы. В следующем коде мы хотим заменить X и Y на A и B соответственно.

Sub ReplaceMulti()

    Dim newString As String

    ' Заменить А на Х
    newString = Replace("ABCD ABDN", "A", "X")
    ' Теперь замените B на Y в новой строке
    newString = Replace(newString, "B", "Y")

    Debug.Print newString

End Sub

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

Sub ReplaceMultiNested()

    Dim newString As String

    ' Заменить A на X, а B на Y
    newString = Replace(Replace("ABCD ABDN", "A", "X"), "B", "Y")

    Debug.Print newString

End Sub

Результатом обоих этих Subs является:
XYCD XYDN

Преобразовать типы в строку (базовый)

Этот раздел о преобразовании чисел в строку. Очень важным моментом здесь является то, что в большинстве случаев VBA автоматически конвертируется в строку для вас. Давайте посмотрим на некоторые примеры:

Sub AutoConverts()

    Dim s As String
    ' Автоматически преобразует число в строку
    s = 12.99
    Debug.Print s

    ' Автоматически преобразует несколько чисел в строку
    s = "ABC" & 6 & 12.99
    Debug.Print s

    ' Автоматически преобразует двойную переменную в строку
    Dim d As Double, l As Long
    d = 19.99
    l = 55
    s = "Значения: " & d & " " & l
    Debug.Print s

End Sub

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

Явное преобразование

Функция Параметры Описание Пример
CStr выражение Преобразует
числовую
переменную
в строку
CStr («45.78»)
Str число Преобразует
числовую
переменную
в строку
Str («45.78»)

В некоторых случаях вы можете захотеть преобразовать элемент в строку без необходимости сначала помещать его в строковую переменную. В этом случае вы можете использовать функции Str или CStr. Оба принимают выражение как функцию, и это может быть любой тип, например long, double, data или boolean.

Давайте посмотрим на простой пример. Представьте, что вы читаете список значений из разных типов ячеек в коллекцию. Вы можете использовать функции Str / CStr, чтобы гарантировать, что они все хранятся в виде строк. Следующий код показывает пример этого:

Sub IspStr()

    Dim coll As New Collection
    Dim c As Range

    ' Считать значения ячеек в коллекцию
    For Each c In Range("A1:A10")
        ' Используйте Str для преобразования значения ячейки в строку
        coll.Add Str(c)
    Next

    ' Распечатайте значения и тип коллекции
    Dim i As Variant
    For Each i In coll
        Debug.Print i, TypeName(i)
    Next

End Sub

В приведенном выше примере мы используем Str для преобразования значения ячейки в строку. Альтернативой этому может быть присвоение значения строке, а затем присвоение строки коллекции. Итак, вы видите, что использование Str здесь намного эффективнее.

Multi Region

Разница между функциями Str и CStr заключается в том, что CStr преобразует в зависимости от региона. Если ваши макросы будут использоваться в нескольких регионах, вам нужно будет использовать CStr для преобразования строк.

Хорошей практикой является использование CStr при чтении значений из ячеек. Если ваш код в конечном итоге используется в другом регионе, вам не нужно вносить какие-либо изменения, чтобы он работал правильно.

Преобразовать строку в число — CLng, CDbl, Val и т.д.

Функция Возвращает Пример
CBool Boolean CBool(«True»), CBool(«0»)
CCur Currency CCur(«245.567»)
CDate Date CDate(«1/1/2019»)
CDbl Double CDbl(«245.567»)
CDec Decimal CDec(«245.567»)
CInt Integer CInt(«45»)
CLng Long Integer CLng(«45.78»)
CVar Variant CVar(«»)

Вышеуказанные функции используются для преобразования строк в различные типы. Если вы присваиваете переменную этого типа, VBA выполнит преобразование автоматически.

Sub StrToNumeric()

    Dim l As Long, d As Double, c As Currency
    Dim s As String
    s = "45.923239"

    l = s
    d = s
    c = s

    Debug.Print "Long is "; l
    Debug.Print "Double is "; d
    Debug.Print "Currency is "; c

End Sub

Использование типов преобразования дает большую гибкость. Это означает, что вы можете определить тип во время выполнения. В следующем коде мы устанавливаем тип на основе аргумента sType, передаваемого в функцию PrintValue. Поскольку этот тип может быть прочитан из внешнего источника, такого как ячейка, мы можем установить тип во время выполнения. Если мы объявим переменную как Long, то при выполнении кода она всегда будет длинной.

Sub Test()
    ' Печатает  46
    PrintValue "45.56", "Long"
    ' Печатает 45.56
    PrintValue "45.56", ""
End Sub

Sub PrintValue(ByVal s As String, ByVal sType As String)

    Dim value

    ' Установите тип данных на основе строки типа
    If sType = "Long" Then
        value = CLng(s)
    Else
        value = CDbl(s)
    End If
    Debug.Print "Type is "; TypeName(value); value

End Sub

Если строка не является допустимым числом (т.е. Содержит символы, другие цифры), вы получаете ошибку «Несоответствие типов».

Sub InvalidNumber()

    Dim l As Long

    ' Даст ошибку несоответствия типов
    l = CLng("45A")

End Sub

Функция Val

Функция преобразует числовые части строки в правильный тип числа.

Val преобразует первые встреченные числа. Как только он встречает буквы в строке, он останавливается. Если есть только буквы, то в качестве значения возвращается ноль. Следующий код показывает некоторые примеры использования Val

Sub IspVal()

    ' Печатает 45
    Debug.Print Val("45 Новая улица")

    ' Печатает 45
    Debug.Print Val("    45 Новая улица")

    ' Печатает 0
    Debug.Print Val("Новая улица 45")

    ' Печатает 12
    Debug.Print Val("12 f 34")

End Sub

Val имеет два недостатка

  1. Не мультирегиональный — Val не распознает международные версии чисел, такие как запятые вместо десятичных. Поэтому вы должны использовать вышеуказанные функции преобразования, когда ваше приложение будет использоваться в нескольких регионах.
  2. Преобразует недопустимые строки в ноль — в некоторых случаях это может быть нормально, но в большинстве случаев лучше, если неверная строка вызывает ошибку. Затем приложение осознает наличие проблемы и может действовать соответствующим образом. Функции преобразования, такие как CLng, вызовут ошибку, если строка содержит нечисловые символы.

Генерация строки элементов — функция строки

Функция Параметры Описание Пример
String число, символ Преобразует
числовую
переменную
в строку
String (5,»*»)

Функция String используется для генерации строки повторяющихся символов. Первый аргумент — это количество повторений, второй аргумент — символ.

Sub IspString()

    ' Печатает: AAAAA
    Debug.Print String(5, "A")
    ' Печатает: >>>>>
    Debug.Print String(5, 62)
    ' Печатает: (((ABC)))
    Debug.Print String(3, "(") & "ABC" & String(3, ")")

End Sub

Преобразовать регистр / юникод — StrConv, UCase, LCase

Функция Параметры Описание Пример
StrConv строка,
преобразование, LCID
Преобразует
строку
StrConv(«abc»,vbUpperCase)

Если вы хотите преобразовать регистр строки в верхний или нижний регистр, вы можете использовать функции UCase и LCase для верхнего и нижнего соответственно. Вы также можете использовать функцию StrConv с аргументом vbUpperCase или vbLowerCase. В следующем коде показан пример использования этих трех функций.

Sub ConvCase()

    Dim s As String
    s = "У Мэри был маленький ягненок"

    ' верхний
    Debug.Print UCase(s)
    Debug.Print StrConv(s, vbUpperCase)

    ' нижний
    Debug.Print LCase(s)
    Debug.Print StrConv(s, vbLowerCase)

    ' Устанавливает первую букву каждого слова в верхний регистр
    Debug.Print StrConv(s, vbProperCase)

End Sub

На выходе: 

У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК
У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК
у мэри был маленький ягненок
у мэри был маленький ягненок
У Мэри Был Маленький Ягненок

Другие преобразования

Как и в случае, StrConv может выполнять другие преобразования на основе параметра Conversion. В следующей таблице приведен список различных значений параметров и того, что они делают. Для получения дополнительной информации о StrConv проверьте страницу MSDN.

Постоянные Преобразует Значение
vbUpperCase 1 в верхний регистр
vbLowerCase 2 в нижнем регистре
vbProperCase 3 первая буква
каждого слова в
верхнем регистре
vbWide* 4 от узкого к
широкому
vbNarrow* 8 от широкого к
узкому
vbKatakana** 16 из Хираганы в
Катакану
vbHiragana 32 из Катаканы в
Хирагану
vbUnicode 64 в юникод
vbFromUnicode 128 из юникода

Использование строк с массивами

Функция Параметры Описание Пример
Split выражение,
разделитель,
ограничить,
сравнить
Разбирает
разделенную
строку в
массив
arr = Split(«A;B;C»,»;»)
Join исходный
массив,
разделитель
Преобразует
одномерный
массив в
строку
s = Join(Arr, «;»)

Строка в массив с использованием Split

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

Sub StrToArr()

    Dim arr() As String
    ' Разобрать строку в массив
    arr = Split("Иван,Анна,Павел,София", ",")

    Dim name As Variant
    For Each name In arr
        Debug.Print name
    Next

End Sub

На выходе:

Иван
Анна
Павел
София

Если вы хотите увидеть некоторые реальные примеры использования Split, вы найдете их в статье Как легко извлечь любую строку без использования VBA InStr.

Массив в строку, используя Join

Если вы хотите построить строку из массива, вы можете легко это сделать с помощью функции Join. По сути, это обратная функция Split. Следующий код предоставляет пример использования Join

Sub ArrToStr()

    Dim Arr(0 To 3) As String
    Arr(0) = "Иван"
    Arr(1) = "Анна"
    Arr(2) = "Павел"
    Arr(3) = "София"

    ' Построить строку из массива
    Dim sNames As String
    sNames = Join(Arr, ",")

    Debug.Print sNames

End Sub

На выходе:

Иван, Анна, Павел, София

Форматирование строки

Функция Параметры Описание Пример
Format выражение,
формат,
firstdayofweek,
firstweekofyear
Форматирует
строку
Format(0.5, «0.00%»)

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

Sub FormatDate()

    Dim s As String
    s = "31/12/2019 10:15:45"

    ' Печатает: 31 12 19
    Debug.Print Format(s, "DD MM YY")
    ' Печатает: Thu 31 Dec 2019
    Debug.Print Format(s, "DDD DD MMM YYYY")
    ' Печатает: Thursday 31 December 2019
    Debug.Print Format(s, "DDDD DD MMMM YYYY")
    ' Печатает: 10:15
    Debug.Print Format(s, "HH:MM")
    ' Печатает: 10:15:45 AM
    Debug.Print Format(s, "HH:MM:SS AM/PM")

End Sub

В следующих примерах представлены некоторые распространенные способы форматирования чисел.

Sub FormatNumbers()

    ' Печатает: 50.00%
    Debug.Print Format(0.5, "0.00%")
    ' Печатает: 023.45
    Debug.Print Format(23.45, "00#.00")
    ' Печатает: 23,000
    Debug.Print Format(23000, "##,000")
    ' Печатает: 023,000
    Debug.Print Format(23000, "0##,000")
    ' Печатает: $23.99
    Debug.Print Format(23.99, "$#0.00")

End Sub

Функция «Формат» — довольно обширная тема, и она может самостоятельно занять всю статью. Если вы хотите получить больше информации, то страница формата MSDN предоставляет много информации.

Полезный совет по использованию формата

Быстрый способ выяснить используемое форматирование — использовать форматирование ячеек на листе Excel. Например, добавьте число в ячейку. Затем щелкните правой кнопкой мыши и отформатируйте ячейку так, как вам нужно. Если вы довольны форматом, выберите «Пользовательский» в списке категорий слева. При выборе этого вы можете увидеть строку формата в текстовом поле типа. Это формат строки, который вы можете использовать в VBA.

VBA Format Function

Заключение

Практически в любом типе программирования вы потратите много времени на манипулирование строками. В этой статье рассматриваются различные способы использования строк в VBA.

Чтобы получить максимальную отдачу, используйте таблицу вверху, чтобы найти тип функции, которую вы хотите использовать. Нажав на левую колонку этой функции, вы попадете в этот раздел.

Если вы новичок в строках в VBA, то я предлагаю вам ознакомиться с разделом «Прочтите это в первую очередь» перед использованием любой из функций.

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Excel компьютерный центр специалист
  • Excel комплексные числа в показательной форме
  • Excel комплексная мультивитаминная добавка для собак мелких пород
  • Excel комплексная мультивитаминная добавка для пожилых собак
  • Excel комментарий в строке формул

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии