С помощью функции ТЕКСТ можно изменить представление числа, применив к нему форматирование с кодами форматов. Это полезно в ситуации, когда нужно отобразить числа в удобочитаемом виде либо объединить их с текстом или символами.
Примечание: Функция ТЕКСТ преобразует числа в текст, что может затруднить их использование в дальнейших вычислениях. Рекомендуем сохранить исходное значение в одной ячейке, а функцию ТЕКСТ использовать в другой. Затем, если потребуется создать другие формулы, всегда ссылайтесь на исходное значение, а не на результат функции ТЕКСТ.
Синтаксис
ТЕКСТ(значение; формат)
Аргументы функции ТЕКСТ описаны ниже.
Имя аргумента |
Описание |
значение |
Числовое значение, которое нужно преобразовать в текст. |
формат |
Текстовая строка, определяющая формат, который требуется применить к указанному значению. |
Общие сведения
Самая простая функция ТЕКСТ означает следующее:
-
=ТЕКСТ(значение, которое нужно отформатировать; «код формата, который требуется применить»)
Ниже приведены популярные примеры, которые вы можете скопировать прямо в 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 — +1), а затем в диалоговом окне Формат ячеек на вкладке Число выберите нужный формат.
Скачивание образцов
Предлагаем скачать книгу, в которой содержатся все примеры применения функции ТЕКСТ из этой статьи и несколько других. Вы можете воспользоваться ими или создать собственные коды форматов для функции ТЕКСТ.
Скачать примеры применения функции ТЕКСТ
Другие доступные коды форматов
Просмотреть другие доступные коды форматов можно в диалоговом окне Формат ячеек.
-
Нажмите клавиши CTRL+1 (на компьютере Mac —
+1), чтобы открыть диалоговое окно Формат ячеек.
-
На вкладке Число выберите нужный формат.
-
Выберите пункт (все форматы).
-
Нужный код формата будет показан в поле Тип. В этом случае выделите всё содержимое поля Тип, кроме точки с запятой (;) и символа @. В примере ниже выделен и скопирован только код ДД.ММ.ГГГГ.
-
Нажмите клавиши CTRL+C, чтобы скопировать код формата, а затем — кнопку Отмена, чтобы закрыть диалоговое окно Формат ячеек.
-
Теперь осталось нажать клавиши CTRL+V, чтобы вставить код формата в функцию ТЕКСТ. Пример: =ТЕКСТ(B2;»ДД.ММ.ГГГГ«). Обязательно заключите скопированный код формата в кавычки («код формата»), иначе в Excel появится сообщение об ошибке.
Коды форматов по категориям
В примерах ниже показано, как применить различные числовые форматы к значениям следующим способом: открыть диалоговое окно Формат ячеек, выбрать пункт (все форматы) и скопировать нужный код формата в формулу с функцией ТЕКСТ.
Почему программа Excel удаляет нули в начале?
Excel воспринимает последовательность цифр, введенную в ячейку, как число, а не как цифровой код, например артикул или номер SKU. Чтобы сохранить нули в начале последовательностей цифр, перед вставкой или вводом значений примените к соответствующему диапазону ячеек текстовый формат. Выделите столбец или диапазон, в который нужно поместить значения, нажмите клавиши CTRL+1, чтобы открыть диалоговое окно Формат ячеек, и выберите на вкладке Число пункт Текстовый. Теперь программа Excel не будет удалять нули в начале.
Если вы уже ввели данные и Excel удалил начальные нули, вы можете снова добавить их с помощью функции ТЕКСТ. Создайте ссылку на верхнюю ячейку со значениями и используйте формат =ТЕКСТ(значение;»00000″), где число нулей представляет нужное количество символов. Затем скопируйте функцию и примените ее к остальной части диапазона.
Если по какой-либо причине потребуется преобразовать текстовые значения обратно в числа, можно умножить их на 1 (например: =D4*1) или воспользоваться двойным унарным оператором (—), например: =—D4.
В Excel группы разрядов разделяются пробелом, если код формата содержит пробел, окруженный знаками номера (#) или нулями. Например, если используется код формата «# ###», число 12200000 отображается как 12 200 000.
Пробел после заполнителя цифры задает деление числа на 1000. Например, если используется код формата «# ###,0 «, число 12200000 отображается в Excel как 12 200,0.
Примечания:
-
Разделитель групп разрядов зависит от региональных параметров. Для России это пробел, но в других странах и регионах может использоваться запятая или точка.
-
Разделитель групп разрядов можно применять в числовых, денежных и финансовых форматах.
Ниже показаны примеры стандартных числовых (только с разделителем групп разрядов и десятичными знаками), денежных и финансовых форматов. В денежном формате можно добавить нужное обозначение денежной единицы, и значения будут выровнены по нему. В финансовом формате символ рубля располагается в ячейке справа от значения (если выбрать обозначение доллара США, то эти символы будут выровнены по левому краю ячеек, а значения — по правому). Обратите внимание на разницу между кодами денежных и финансовых форматов: в финансовых форматах для отделения символа денежной единицы от значения используется звездочка (*).
Чтобы получить код формата для определенной денежной единицы, сначала нажмите клавиши CTRL+1 (на компьютере 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)&ТЕКСТ(СЕГОДНЯ();»ДД.ММ.ГГ»).
Это экспоненциальное представление числа. Excel автоматически приводит к такому виду числа длиной более 12 цифр, если к ячейкам применен формат Общий, и числа длиннее 15 цифр, если выбран формат Числовой. Если вы вводите длинные цифровые строки, но не хотите, чтобы они отображались в таком виде, то сначала примените к соответствующим ячейкам формат Текстовый.
См. также
Создание и удаление пользовательских числовых форматов
Преобразование чисел из текстового формата в числовой
Функции Excel (по категориям)
Числовой пользовательский формат
– это формат отображения числа задаваемый пользователем. Например, число 5647,22 можно отобразить как 005647 или, вообще в произвольном формате, например, +(5647)руб.22коп. Пользовательские форматы также можно использовать в функции
ТЕКСТ()
. Эта функция возвращает текстовое значение в нужном пользователю виде.
Преобразование числа в текст
может понадобиться для
формирования строк, содержащих текст и числовые значения
. В этом случае числу можно придать практически любой формат. Ниже приведены примеры форматов, которые можно использовать в функции
ТЕКСТ()
.
Обычно формула выглядит так:
=ТЕКСТ(1234567,8999;»# ##
0,00
«)
(не забудьте про двойные кавычки при указании формата). Результат выглядит так:
1 234 567,90
. Значение в ячейке будет выравнено по левому краю (если в ячейке выравнивание по горизонтали установлено «По значению»), т.к. это текстовое значение.
Ниже приведены примеры форматирования.
|
Число |
|
«(плюс)# ##0,00;(минус)# ##0,00;0» |
5555,22 |
(плюс)5 555,22 |
«(+)# ##0,00;(–)# ##0,00;0,00» |
5555,22 |
(+)5 555,22 |
«# ##0,00;# ##0,00; |
? |
|
«# #0 руб., 00 коп» |
1234,611 |
1 234 руб., 61 коп |
«# ##0,0 M» Вводить нужно так: «#пробел##0,0двапробелаM» |
1 326 666,22 |
1,3 М выводит число в формате миллионов |
«00000» | 123 | 00123 |
«0»& |
13 |
13°С вывод символа градуса Цельсия через его код |
Необходимо помнить, что ряд букв (с м г М) и символов (*:, пробел) используются для отображения формата: с — секунда, м – минута, г – год, М – месяц. Чтобы эти символы воспринимались как обычные, а не как символы формата, не забудьте перед ними ставить обратный слеш .
Пользовательский формат часто используется для склонения времени, например,
1 час, 2 часа, 5 часов
;
1 год, 5 лет
;
2 месяца, 6 месяцев
. Это позволяет сделать специальный условный формат.
Например, формула склоняет сутки
=»сут»&
ТЕКСТ(B3;»[<2]ки ;ок «)
в зависимости от количества суток в ячейке
В3
. Такая конструкция формата говорит функции
ТЕКСТ()
, что если в ячейке
В3
значение менее 2, т.е. 1 сутки, то нужно использовать окончание «ки», во всех остальных случаях (больше или равно 2) нужно использовать окончание «ок», т.е. 2 суток, 3 суток и т.д.
Всего можно использовать 3 условия. Если попытаться использовать 4 и более условия, то будет возвращена ошибка #ЗНАЧ!
Такой устовный пользовательский формат можно использовать и в формате ячеек. В этом случае в ячейке, к которой применен такой формат, будет по преждему число (например 5), а на листе
будет отображаться,
5 суток
.
ВНИМАНИЕ!
Результат функции
ТЕКСТ()
– текст! Если в результате применения пользовательского формата нужно получить число, то используйте подход изложенный в статье
Пользовательский числовой формат (Формат ячеек)
. Там же можно найти примеры других форматов.
Ниже приведены форматы, рассмотренные в
файле примера
.
Содержание
- Конвертация числа в текстовый вид
- Способ 1: форматирование через контекстное меню
- Способ 2: инструменты на ленте
- Способ 3: использование функции
- Конвертация текста в число
- Способ 1: преобразование с помощью значка об ошибке
- Способ 2: конвертация при помощи окна форматирования
- Способ 3: конвертация посредством инструментов на ленте
- Способ 4: применение формулы
- Способ 5: применение специальной вставки
- Способ 6: использование инструмента «Текст столбцами»
- Способ 7: применение макросов
- Вопросы и ответы
Одной из частых задач, с которыми сталкиваются пользователи программы Эксель, является преобразования числовых выражений в текстовый формат и обратно. Этот вопрос часто заставляет потратить на решение много времени, если юзер не знает четкого алгоритма действий. Давайте разберемся, как можно решить обе задачи различными способами.
Конвертация числа в текстовый вид
Все ячейки в Экселе имеют определенный формат, который задает программе, как ей рассматривать то или иное выражение. Например, даже если в них будут записаны цифры, но формат выставлен текстовый, то приложение будет рассматривать их, как простой текст, и не сможет проводить с такими данными математические вычисления. Для того, чтобы Excel воспринимал цифры именно как число, они должны быть вписаны в элемент листа с общим или числовым форматом.
Для начала рассмотрим различные варианты решения задачи конвертации чисел в текстовый вид.
Способ 1: форматирование через контекстное меню
Чаще всего пользователи выполняют форматирование числовых выражений в текстовые через контекстное меню.
- Выделяем те элементы листа, в которых нужно преобразовать данные в текст. Как видим, во вкладке «Главная» на панели инструментов в блоке «Число» в специальном поле отображается информация о том, что данные элементы имеют общий формат, а значит, цифры, вписанные в них, воспринимаются программой, как число.
- Кликаем правой кнопкой мыши по выделению и в открывшемся меню выбираем позицию «Формат ячеек…».
- В открывшемся окне форматирования переходим во вкладку «Число», если оно было открыто в другом месте. В блоке настроек «Числовые форматы» выбираем позицию «Текстовый». Для сохранения изменений жмем на кнопку «OK» в нижней части окна.
- Как видим, после данных манипуляций в специальном поле высвечивается информация о том, что ячейки были преобразованы в текстовый вид.
- Но если мы попытаемся подсчитать автосумму, то она отобразится в ячейке ниже. Это означает, что преобразование было совершено не полностью. В этом и заключается одна из фишек Excel. Программа не дает завершить преобразование данных наиболее интуитивно понятным способом.
- Чтобы завершить преобразование, нам нужно последовательно двойным щелчком левой кнопки мыши поместить курсор в каждый элемент диапазона в отдельности и нажать на клавишу Enter. Чтобы упростить задачу вместо двойного щелчка можно использовать нажатие функциональной клавиши F2.
- После выполнения данной процедуры со всеми ячейками области, данные в них будут восприниматься программой, как текстовые выражения, а, следовательно, и автосумма будет равна нулю. Кроме того, как видим, левый верхний угол ячеек будет окрашен в зеленый цвет. Это также является косвенным признаком того, что элементы, в которых находятся цифры, преобразованы в текстовый вариант отображения. Хотя этот признак не всегда является обязательным и в некоторых случаях такая пометка отсутствует.
Урок: Как изменить формат в Excel
Способ 2: инструменты на ленте
Преобразовать число в текстовый вид можно также воспользовавшись инструментами на ленте, в частности, использовав поле для показа формата, о котором шел разговор выше.
- Выделяем элементы, данные в которых нужно преобразовать в текстовый вид. Находясь во вкладке «Главная» кликаем по пиктограмме в виде треугольника справа от поля, в котором отображается формат. Оно расположено в блоке инструментов «Число».
- В открывшемся перечне вариантов форматирования выбираем пункт «Текстовый».
- Далее, как и в предыдущем способе, последовательно устанавливаем курсор в каждый элемент диапазона двойным щелчком левой кнопки мыши или нажатием клавиши F2, а затем щелкаем по клавише Enter.
Данные преобразовываются в текстовый вариант.
Способ 3: использование функции
Ещё одним вариантом преобразования числовых данных в тестовые в Экселе является применение специальной функции, которая так и называется – ТЕКСТ. Данный способ подойдёт, в первую очередь, если вы хотите перенести числа как текст в отдельный столбец. Кроме того, он позволит сэкономить время на преобразовании, если объем данных слишком большой. Ведь, согласитесь, что перещелкивать каждую ячейку в диапазоне, насчитывающем сотни или тысячи строк – это не самый лучший выход.
- Устанавливаем курсор в первый элемент диапазона, в котором будет выводиться результат преобразования. Щелкаем по значку «Вставить функцию», который размещен около строки формул.
- Запускается окно Мастера функций. В категории «Текстовые» выделяем пункт «ТЕКСТ». После этого кликаем по кнопке «OK».
- Открывается окно аргументов оператора ТЕКСТ. Данная функция имеет следующий синтаксис:
=ТЕКСТ(значение;формат)
Открывшееся окно имеет два поля, которые соответствуют данным аргументам: «Значение» и «Формат».
В поле «Значение» нужно указать преобразовываемое число или ссылку на ячейку, в которой оно находится. В нашем случае это будет ссылка на первый элемент обрабатываемого числового диапазона.
В поле «Формат» нужно указать вариант отображения результата. Например, если мы введем «0», то текстовый вариант на выходе будет отображаться без десятичных знаков, даже если в исходнике они были. Если мы внесем «0,0», то результат будет отображаться с одним десятичным знаком, если «0,00», то с двумя, и т.д.
После того, как все требуемые параметры введены, щелкаем по кнопке «OK».
- Как видим, значение первого элемента заданного диапазона отобразилось в ячейке, которую мы выделили ещё в первом пункте данного руководства. Для того, чтобы перенести и другие значения, нужно скопировать формулу в смежные элементы листа. Устанавливаем курсор в нижний правый угол элемента, который содержит формулу. Курсор преобразуется в маркер заполнения, имеющий вид небольшого крестика. Зажимаем левую кнопку мыши и протаскиваем по пустым ячейкам параллельно диапазону, в котором находятся исходные данные.
- Теперь весь ряд заполнен требуемыми данными. Но и это ещё не все. По сути, все элементы нового диапазона содержат в себе формулы. Выделяем эту область и жмем на значок «Копировать», который расположен во вкладке «Главная» на ленте инструментов группе «Буфер обмена».
- Далее, если мы хотим сохранить оба диапазона (исходный и преобразованный), не снимаем выделение с области, которая содержит формулы. Кликаем по ней правой кнопкой мыши. Происходит запуск контекстного списка действий. Выбираем в нем позицию «Специальная вставка». Среди вариантов действий в открывшемся списке выбираем «Значения и форматы чисел».
Если же пользователь желает заменить данные исходного формата, то вместо указанного действия нужно выделить именно его и произвести вставку тем же способом, который указан выше.
- В любом случае, в выбранный диапазон будут вставлены данные в текстовом виде. Если же вы все-таки выбрали вставку в исходную область, то ячейки, содержащие формулы, можно очистить. Для этого выделяем их, кликаем правой кнопкой мыши и выбираем позицию «Очистить содержимое».
На этом процедуру преобразования можно считать оконченной.
Урок: Мастер функций в Excel
Конвертация текста в число
Теперь давайте разберемся, какими способами можно выполнить обратную задачу, а именно как преобразовать текст в число в Excel.
Способ 1: преобразование с помощью значка об ошибке
Проще и быстрее всего выполнить конвертацию текстового варианта с помощью специального значка, который сообщает об ошибке. Этот значок имеет вид восклицательного знака, вписанного в пиктограмму в виде ромба. Он появляется при выделении ячеек, которые имеют пометку в левом верхнем углу зеленым цветом, обсуждаемую нами ранее. Эта пометка ещё не свидетельствует о том, что данные находящиеся в ячейке обязательно ошибочные. Но цифры, расположенные в ячейке имеющей текстовый вид, вызывают подозрения у программы в том, что данные могут быть внесены некорректно. Поэтому на всякий случай она их помечает, чтобы пользователь обратил внимание. Но, к сожалению, такие пометки Эксель выдает не всегда даже тогда, когда цифры представлены в текстовом виде, поэтому ниже описанный способ подходит не для всех случаев.
- Выделяем ячейку, в которой содержится зеленый индикатор о возможной ошибке. Кликаем по появившейся пиктограмме.
- Открывается список действий. Выбираем в нем значение «Преобразовать в число».
- В выделенном элементе данные тут же будут преобразованы в числовой вид.
Если подобных текстовых значений, которые следует преобразовать, не одно, а множество, то в этом случае можно ускорить процедуру преобразования.
- Выделяем весь диапазон, в котором находятся текстовые данные. Как видим, пиктограмма появилась одна для всей области, а не для каждой ячейки в отдельности. Щелкаем по ней.
- Открывается уже знакомый нам список. Как и в прошлый раз, выбираем позицию «Преобразовать в число».
Все данные массива будут преобразованы в указанный вид.
Способ 2: конвертация при помощи окна форматирования
Как и для преобразования данных из числового вида в текст, в Экселе существует возможность обратного конвертирования через окно форматирования.
- Выделяем диапазон, содержащий цифры в текстовом варианте. Кликаем правой кнопкой мыши. В контекстном меню выбираем позицию «Формат ячеек…».
- Выполняется запуск окна форматирования. Как и в предыдущий раз, переходим во вкладку «Число». В группе «Числовые форматы» нам нужно выбрать значения, которые позволят преобразовать текст в число. К ним относится пункты «Общий» и «Числовой». Какой бы из них вы не выбрали, программа будет расценивать цифры, введенные в ячейку, как числа. Производим выбор и жмем на кнопку. Если вы выбрали значение «Числовой», то в правой части окна появится возможность отрегулировать представление числа: выставить количество десятичных знаков после запятой, установить разделителями между разрядами. После того, как настройка выполнена, жмем на кнопку «OK».
- Теперь, как и в случае преобразования числа в текст, нам нужно прощелкать все ячейки, установив в каждую из них курсор и нажав после этого клавишу Enter.
После выполнения этих действий все значения выбранного диапазона преобразуются в нужный нам вид.
Способ 3: конвертация посредством инструментов на ленте
Перевести текстовые данные в числовые можно, воспользовавшись специальным полем на ленте инструментов.
- Выделяем диапазон, который должен подвергнуться трансформации. Переходим во вкладку «Главная» на ленте. Кликаем по полю с выбором формата в группе «Число». Выбираем пункт «Числовой» или «Общий».
- Далее прощелкиваем уже не раз описанным нами способом каждую ячейку преобразуемой области с применением клавиш F2 и Enter.
Значения в диапазоне будут преобразованы из текстовых в числовые.
Способ 4: применение формулы
Также для преобразования текстовых значений в числовые можно использовать специальные формулы. Рассмотрим, как это сделать на практике.
- В пустой ячейке, расположенной параллельно первому элементу диапазона, который следует преобразовать, ставим знак «равно» (=) и двойной символ «минус» (—). Далее указываем адрес первого элемента трансформируемого диапазона. Таким образом, происходит двойное умножение на значение «-1». Как известно, умножение «минус» на «минус» дает «плюс». То есть, в целевой ячейке мы получаем то же значение, которое было изначально, но уже в числовом виде. Даная процедура называется двойным бинарным отрицанием.
- Жмем на клавишу Enter, после чего получаем готовое преобразованное значение. Для того, чтобы применить данную формулу для всех других ячеек диапазона, используем маркер заполнения, который ранее был применен нами для функции ТЕКСТ.
- Теперь мы имеем диапазон, который заполнен значениями с формулами. Выделяем его и жмем на кнопку «Копировать» во вкладке «Главная» или применяем сочетание клавиш Ctrl+C.
- Выделяем исходную область и производим щелчок по ней правой кнопкой мыши. В активировавшемся контекстном списке переходим по пунктам «Специальная вставка» и «Значения и форматы чисел».
- Все данные вставлены в нужном нам виде. Теперь можно удалить транзитный диапазон, в котором находится формула двойного бинарного отрицания. Для этого выделяем данную область, кликом правой кнопки мыши вызываем контекстное меню и выбираем в нем позицию «Очистить содержимое».
Кстати, для преобразования значений данным методом совсем не обязательно использовать исключительно двойное умножение на «-1». Можно применять любое другое арифметическое действие, которое не ведет к изменению значений (сложение или вычитание нуля, выполнение возведения в первую степень и т.д.)
Урок: Как сделать автозаполнение в Excel
Способ 5: применение специальной вставки
Следующий способ по принципу действия очень похож на предыдущий с той лишь разницей, что для его использования не нужно создавать дополнительный столбец.
- В любую пустую ячейку на листе вписываем цифру «1». Затем выделяем её и жмем на знакомый значок «Копировать» на ленте.
- Выделяем область на листе, которую следует преобразовать. Кликаем по ней правой кнопкой мыши. В открывшемся меню дважды переходим по пункту «Специальная вставка».
- В окне специальной вставки выставляем переключатель в блоке «Операция» в позицию «Умножить». Вслед за этим жмем на кнопку «OK».
- После этого действия все значения выделенной области будут преобразованы в числовые. Теперь при желании можно удалить цифру «1», которую мы использовали в целях конвертации.
Способ 6: использование инструмента «Текст столбцами»
Ещё одним вариантом, при котором можно преобразовать текст в числовой вид, является применение инструмента «Текст столбцами». Его есть смысл использовать тогда, когда вместо запятой в качестве разделителя десятичных знаков используется точка, а в качестве разделителя разрядов вместо пробела – апостроф. Этот вариант воспринимается в англоязычном Экселе, как числовой, но в русскоязычной версии этой программы все значения, которые содержат указанные выше знаки, воспринимаются как текст. Конечно, можно перебить данные вручную, но если их много, это займет значительное количество времени, тем более что существует возможность гораздо более быстрого решения проблемы.
- Выделяем фрагмент листа, содержимое которого нужно преобразовать. Переходим во вкладку «Данные». На ленте инструментов в блоке «Работа с данными» кликаем по значку «Текст по столбцам».
- Запускается Мастер текстов. В первом окне обратите внимание, чтобы переключатель формата данных стоял в позиции «С разделителями». По умолчанию он должен находиться в этой позиции, но проверить состояние будет не лишним. Затем кликаем по кнопке «Далее».
- Во втором окне также оставляем все без изменений и жмем на кнопку «Далее».
- А вот после открытия третьего окна Мастера текстов нужно нажать на кнопку «Подробнее».
- Открывается окно дополнительной настройки импорта текста. В поле «Разделитель целой и дробной части» устанавливаем точку, а в поле «Разделитель разрядов» — апостроф. Затем делаем один щелчок по кнопке «OK».
- Возвращаемся в третье окно Мастера текстов и жмем на кнопку «Готово».
- Как видим, после выполнения данных действий числа приняли привычный для русскоязычной версии формат, а это значит, что они одновременно были преобразованы из текстовых данных в числовые.
Способ 7: применение макросов
Если вам часто приходится преобразовывать большие области данных из текстового формата в числовой, то имеется смысл в этих целях записать специальный макрос, который будет использоваться при необходимости. Но для того, чтобы это выполнить, прежде всего, нужно в своей версии Экселя включить макросы и панель разработчика, если это до сих пор не сделано.
- Переходим во вкладку «Разработчик». Жмем на значок на ленте «Visual Basic», который размещен в группе «Код».
- Запускается стандартный редактор макросов. Вбиваем или копируем в него следующее выражение:
Sub Текст_в_число()
Selection.NumberFormat = "General"
Selection.Value = Selection.Value
End Sub
После этого закрываем редактор, выполнив нажатие стандартной кнопки закрытия в верхнем правом углу окна.
- Выделяем фрагмент на листе, который нужно преобразовать. Жмем на значок «Макросы», который расположен на вкладке «Разработчик» в группе «Код».
- Открывается окно записанных в вашей версии программы макросов. Находим макрос с наименованием «Текст_в_число», выделяем его и жмем на кнопку «Выполнить».
- Как видим, тут же происходит преобразование текстового выражения в числовой формат.
Урок: Как создать макрос в Экселе
Как видим, существует довольно много вариантов преобразования в Excel цифр, которые записаны в числовом варианте, в текстовый формат и в обратном направлении. Выбор определенного способа зависит от многих факторов. Прежде всего, это поставленная задача. Ведь, например, быстро преобразовать текстовое выражение с иностранными разделителями в числовое можно только использовав инструмент «Текст столбцами». Второй фактор, который влияет на выбор варианта – это объемы и частота выполняемых преобразований. Например, если вы часто используете подобные преобразования, имеет смысл произвести запись макроса. И третий фактор – индивидуальное удобство пользователя.
Часто в отчетах Excel необходимо объединять текст с числами. Проблема заключается в том, что вовремя объединения текста с числом нельзя сохранить числовой формат данных ячейки. Число в ячейке отформатировано как текст.
Отформатировать число как текст в Excel с денежным форматом ячейки
Рассмотрим, например, отчет, который изображен ниже на рисунке. Допустим, например, необходимо в отчете поместить список магазинов и их результаты продаж в одной ячейке:
Обратите внимание, что каждое число после объединения с текстом (в столбце D) не сохраняет свой денежный формат, который определен в исходной ячейке (столбца B).
Чтобы решить данную задачу, необходимо поместить ссылку к ячейкам с числами денежных сумм в функцию ТЕКСТ. Благодаря ей можно форматировать числовые значения прямо в текстовой строке. Формула изображена на рисунке:
Формула позволяет решить данную задачу если речь идет только об одном типе валюты. Когда валют будет несколько придется использовать в формуле макрофункцию – об этом речь пойдет ниже. А пока разберемся с этой формулой.
Функция ТЕКСТ требует 2 обязательных для заполнения аргумента:
- Значение – ссылка на исходное число (в данном случае).
- Формат – текстовый код формата ячеек Excel (может быть пользовательский).
Число можно форматировать любым способом, важно лишь соблюдать правила оформления форматов, который должен распознаваться в Excel.
Например, ниже заполненная аргументами функция ТЕКСТ возвращает число в денежном формате пересчитанному по курсу 68 руб./1$:
Измененная ниже формула возвращает долю в процентах от общей выручки:
Простой способ проверки синтаксиса кода формата, который распознает Excel – это использование окна «Формат ячеек». Для этого:
- Щелкните правой кнопкой мышки по любой ячейке с числом и выберите из появившегося контекстного меню опцию «Формат ячейки». Или нажмите комбинацию горячих клавиш CTRL+1.
- Перейдите на вкладку «Число».
- В секции «Числовые форматы:» выберите категорию «(все форматы)».
- Введите в поле «Тип:» свой пользовательский код формата и в секции «Образец» наблюдайте как он будет распознан в Excel и отображен в ячейке.
Функция РУБЛЬ для форматирования числа как текст в одной ячейке
Более упрощенным альтернативным решением для данной задачи может послужить функция РУБЛЬ, которая преобразует любое число в текст и отображает его в денежном формате:
Данное решение весьма ограничено по функциональности и подходит только для тех случаев если соединяемое число с текстом является денежно суммой в валюте рубли (или той которая является по умолчанию и указана в региональных стандартах панели управления Windows).
Функция РУБЛЬ требует для заполнения только 2 аргумента:
- Число – ссылка на числовое значение (обязательный аргумент для заполнения).
- [Число_знаков] – Количество символов после запятой.
Пользовательская макрофункция для получения формата ячейки в Excel
Если в исходном столбце содержаться значения в ячейках с разным форматом валют тогда нам потребуется распознать все форматы в каждой ячейке. По умолчанию в Excel нет стандартной функции, которая умеет распознавать и возвращать форматы ячеек. Поэтому напишем свою пользовательскую макрофункцию и добавим ее в нашу формулу. Макрофункция будет называться ВЗЯТЬФОРМАТ (или можете назвать ее по-своему). Исходный VBA-код макрофункции выглядит так:
Public Function ВЗЯТЬФОРМАТ(val As Range) As String
Dim money As String
money = WorksheetFunction.Text(val, val.NumberFormat)
ВЗЯТЬФОРМАТ = Replace(money, Application.ThousandsSeparator, " ")
End Function
Скопируйте его в модуль («Insert»-«Module») VBA-редактора (ALT+F11). При необходимости прочитайте:
Примеры как создать пользовательскую функцию в Excel.
Теперь изменяем нашу формулу и получаем максимально эффективный результат:
Благодаря функции ВЗЯТЬФОРМАТ написанной на VBA-макросе мы просто берем значение и формат из исходной ячейки и подставляем его как текстовую строку. Так наша формула с пользовательской макрофункцией ВЗЯТЬФОРМАТ автоматически определяет валюту для каждой суммы в исходных значениях ячеек.
Преобразование чисел-как-текст в нормальные числа
Если для каких-либо ячеек на листе был установлен текстовый формат (это мог сделать пользователь или программа при выгрузке данных в Excel), то введенные потом в эти ячейки числа Excel начинает считать текстом. Иногда такие ячейки помечаются зеленым индикатором, который вы, скорее всего, видели:
Причем иногда такой индикатор не появляется (что гораздо хуже).
В общем и целом, появление в ваших данных чисел-как-текст обычно приводит к большому количеству весьма печальных последствий:
Особенно забавно, что естественное желание просто изменить формат ячейки на числовой — не помогает. Т.е. вы, буквально, выделяете ячейки, щелкаете по ним правой кнопкой мыши, выбираете Формат ячеек (Format Cells), меняете формат на Числовой (Number), жмете ОК — и ничего не происходит! Совсем!
Возможно, «это не баг, а фича», конечно, но нам от этого не легче. Так что давайте-к рассмотрим несколько способов исправить ситуацию — один из них вам обязательно поможет.
Способ 1. Зеленый уголок-индикатор
Если на ячейке с числом с текстовом формате вы видите зеленый уголок-индикатор, то считайте, что вам повезло. Можно просто выделить все ячейки с данными и нажать на всплывающий желтый значок с восклицательным знаком, а затем выбрать команду Преобразовать в число (Convert to number):
Все числа в выделенном диапазоне будут преобразованы в полноценные.
Если зеленых уголков нет совсем, то проверьте — не выключены ли они в настройках вашего Excel (Файл — Параметры — Формулы — Числа, отформатированные как текст или с предшествующим апострофом).
Способ 2. Повторный ввод
Если ячеек немного, то можно поменять их формат на числовой, а затем повторно ввести данные, чтобы изменение формата вступило-таки в силу. Проще всего это сделать, встав на ячейку и нажав последовательно клавиши F2 (вход в режим редактирования, в ячейке начинает мигаеть курсор) и затем Enter. Также вместо F2 можно просто делать двойной щелчок левой кнопкой мыши по ячейке.
Само-собой, что если ячеек много, то такой способ, конечно, не подойдет.
Способ 3. Формула
Можно быстро преобразовать псевдочисла в нормальные, если сделать рядом с данными дополнительный столбец с элементарной формулой:
Двойной минус, в данном случае, означает, на самом деле, умножение на -1 два раза. Минус на минус даст плюс и значение в ячейке это не изменит, но сам факт выполнения математической операции переключает формат данных на нужный нам числовой.
Само-собой, вместо умножения на 1 можно использовать любую другую безобидную математическую операцию: деление на 1 или прибавление-вычитание нуля. Эффект будет тот же.
Способ 4. Специальная вставка
Этот способ использовали еще в старых версиях Excel, когда современные эффективные менеджеры под стол ходили зеленого уголка-индикатора еще не было в принципе (он появился только с 2003 года). Алгоритм такой:
- в любую пустую ячейку введите 1
- скопируйте ее
- выделите ячейки с числами в текстовом формате и поменяйте у них формат на числовой (ничего не произойдет)
- щелкните по ячейкам с псевдочислами правой кнопкой мыши и выберите команду Специальная вставка (Paste Special) или используйте сочетание клавиш Ctrl+Alt+V
- в открывшемся окне выберите вариант Значения (Values) и Умножить (Multiply)
По-сути, мы выполняем то же самое, что и в прошлом способе — умножение содержимого ячеек на единицу — но не формулами, а напрямую из буфера.
Способ 5. Текст по столбцам
Если псеводчисла, которые надо преобразовать, вдобавок еще и записаны с неправильными разделителями целой и дробной части или тысяч, то можно использовать другой подход. Выделите исходный диапазон с данными и нажмите кнопку Текст по столбцам (Text to columns) на вкладке Данные (Data). На самом деле этот инструмент предназначен для деления слипшегося текста по столбцам, но, в данном случае, мы используем его с другой целью.
Пропустите первых два шага нажатием на кнопку Далее (Next), а на третьем воспользуйтесь кнопкой Дополнительно (Advanced). Откроется диалоговое окно, где можно задать имеющиеся сейчас в нашем тексте символы-разделители:
После нажатия на Готово Excel преобразует наш текст в нормальные числа.
Способ 6. Макрос
Если подобные преобразования вам приходится делать часто, то имеет смысл автоматизировать этот процесс при помощи несложного макроса. Нажмите сочетание клавиш Alt+F11 или откройте вкладку Разработчик (Developer) и нажмите кнопку Visual Basic. В появившемся окне редактора добавьте новый модуль через меню Insert — Module и скопируйте туда следующий код:
Sub Convert_Text_to_Numbers() Selection.NumberFormat = "General" Selection.Value = Selection.Value End Sub
Теперь после выделения диапазона всегда можно открыть вкладку Разрабочик — Макросы (Developer — Macros), выбрать наш макрос в списке, нажать кнопку Выполнить (Run) — и моментально преобразовать псевдочисла в полноценные.
Также можно добавить этот макрос в личную книгу макросов, чтобы использовать позднее в любом файле.
P.S.
С датами бывает та же история. Некоторые даты тоже могут распознаваться Excel’ем как текст, поэтому не будет работать группировка и сортировка. Решения — те же самые, что и для чисел, только формат вместо числового нужно заменить на дату-время.
Ссылки по теме
- Деление слипшегося текста по столбцам
- Вычисления без формул специальной вставкой
- Преобразование текста в числа с помощью надстройки PLEX