Разделить текст с числом на два столбца (текст и число отдельно)

Майнинг и криптовалюты Компьютерные игры польза или вред Авг 22

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

Microsoft Excel

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

Excel из текста в число

Для примера я создам следующую табличку:

image

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

Способ 1

Выделяем наши ячейки и на вкладке Главная в поле Число нажимаем на стрелочку с выпадающим списком

image

В списке выбираем необходимый формат (это может быть Общий, Числовой, Денежный, Финансовый) После этого возможно придется обновить формулу или щелкнуть на каждой ячейке дважды ЛКМ (левую клавишу мыши) и убрать выделение

Способ 2

Выделяем ячейки и кликаем на них ПКМ (правой клавишей мыши)

В контекстном меню выбираем Формат ячеек

На вкладке Число в поле Числовые форматы выбираем подходящий формат. Жмем ОК, после чего вновь пересчитываем.

Способ 3

Нажимаем клавиатурную комбинацию Ctrl+1 и далее выполняем последний пункт способа 2

Способ 4

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

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

Excel из числа в текст

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

В Excel видны только формулы

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

В открывшемся окне переходим на вкладку Дополнительно, листаем вниз до пункта Показать параметры для следующего листа, где убираем галочку на пункте Показывать формулы а не их значения, жмем кнопку ОК

Описанное выше справедливо для Microsoft Excel 2007, для других версий программы пути могут немного различаться, так для версии 2011 — 2016 года необходимо перейти по пути: Параметры — Разработка — Вид  —  Показать в книге нужно установить флажок Формулы.

Познакомимся с вариантами преобразования формулы Excel в текст (в результате получается не значение ячейки, а формульное выражение в текстовом виде, например, «=A1+A2», «=СЕГОДНЯ()» и т.д.). Возникают ситуации когда необходимо отобразить в ячейке не значение формульного выражения, а именно ее текстовую запись. С помощью режима отображения формул мы можем увидеть все формульные выражения листа и книги в текстовом виде, однако если мы хотим показать формулу не для всех, а для каких-то конкретных ячеек, то такой вариант не подходит. Однако вне зависимости от целей преобразования нам понадобится способ извлечь из ячейки строку с формулой.

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

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

  • Поменять формат ячейки на текстовый, а затем произвести вычисление формулы;При этом для каждой ячейки нужно будет вручную производить изменение.
  • Добавить апостроф (символ «‘») перед знаком равно (символ «=») в формульном выражении.В данном варианте подставить апостроф можно как вручную, так и через замену («=» на «‘=» с помощью инструмента «Найти и заменить»).

Теперь перейдем к более общему случаю и рассмотрим 2 основных варианта перевода формулы в текст (т.е. получить текстовую запись):

  • Функция Ф.ТЕКСТ (доступна начиная с версии Excel 2013);
  • Пользовательская функция (UDF).

Функция Ф.ТЕКСТ в Excel

Начиная с версии Excel 2013 для применения доступна функция Ф.ТЕКСТ (FORMULATEXT в английской версии):

Ф.ТЕКСТ(ссылка) Возвращает формулу в виде строки.

  • Ссылка (обязательный аргумент) — ссылка на ячейку или диапазон ячеек.

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

При этом в зависимости от выбранного у вас параметра отображения стиля ссылок (A1 или R1C1) формула автоматически будет подстраиваться под формат записи:

Замечания

При работе с данной функцией есть несколько важных особенностей, на которые необходимо обратить внимание:

  • Аргумент «Ссылка» может ссылаться на другие листы и книги;
  • Если аргумент «Ссылка» не содержит формульное выражение или содержит ссылку на закрытую книгу, то в результате будет возвращено значение ошибки.

Пользовательская функция (UDF)

Перейдем в редактор Visual Basic (сочетание клавиш Alt + F11), вставляем новый модуль и добавляем следующий код:

Как обычно, к новой функции мы можем обратиться либо через мастер функций (выбрав ее из категории Определенные пользователем), либо ввести формульное выражение в пустую ячейку:

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

В данном примере мы использовали свойство диапазона FormulaLocal, которое позволяет преобразовать формульное выражение со стилем ссылок A1, однако в зависимости от предпочтений стиль записи можно изменить, а именно поменять свойство FormulaLocal на один из следующих вариантов:

  • Formula — формат A1 (англоязычная формула);
  • FormulaR1C1 — формат R1C1 (англоязычная);
  • FormulaLocal — формат A1 (неанглоязычная/местная);
  • FormulaR1C1Local — формат R1C1 (неанглоязычная/местная).

Выбираем необходимый формат записи, корректируем код FText в VBA и на выходе получаем итоговое преобразование:

Удачи вам и до скорых встреч на страницах блога Tutorexcel.ru!

Поделиться с друзьями:
Поиск по сайту:

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

Зачем это нужно

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

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

Использование надстройки

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

Преобразовать числа в текст прописью в Excel 2007, 2010, 2016, можно следующим образом:

  1. Запустить Эксель и зайти в раздел «файл».
  2. Кликнуть на строку «параметры».
  3. Откроется окошко, в котором необходимо перейти в пункт «надстройки».
  4. Внизу в строке «управление» поставить значение «надстройки Эксель» и щелкнуть на элемент «перейти».
  5. Появится маленькое окно, в котором требуется нажать на кнопку «обзор».
  6. В появившемся окошке найти предварительно скачанный файл, выделить его и кликнуть на ОК.
  7. Инструмент появился в доступных надстройках. Поставить галочку в квадратике рядом с ним и снова щелкнуть мышкой на ОК.
  8. Теперь нужно проверить функционирование надстройки. Для этого в любой ячейке ввести произвольное число.
  9. Выделить любой другой элемент и кликнуть на ярлычок «вставить функцию», находящийся с левой стороны от строчки формулы.
  10. Открыть мастер функций, в предложенном списке найти «сумма прописью». Выделить ее и кликнуть на ОК.
  11. В окошке «аргументы функции» в строке «сумма» вписать нужное числовое значение. Оно сразу отобразится в указанной области в рублях и копейках прописью.
  12. В строчке можно указать адрес любой ячейки. Возможны 2 варианта – ручным способом через запись координат или простым нажатием на нее в тот момент, когда указатель мышки стоит в поле «сумма». Щелкнуть на ОК.
  13. Далее цифра, введенная в ячейку, отобразится в стоимостном выражении прописью в той клетке, где стоит формула.

  Что такое условное форматирование в Эксель и как его использовать

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

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

Синтаксис обычно такой: Сумма_прописью (сумма) или Сумма_прописью (координаты_ячейки).

Если пользователь напечатает в ячейке формулу =Сумма_прописью (74) и нажмет на клавишу ENTER, то в ней автоматически появится текст «семьдесят четыре рубля 00 копеек» (с копейками или без зависит от самой формулы).

Если пользователь напечатает в ячейке =Сумма прописью (А3), то цифра, стоящая в клетке А3, отобразится в запрашиваемом формате.

Скрипт VBA

Далее представлена подготовленная функция на VBA для пользователей, которая переведет цифровой показатель от 0 до 9 999 999 в его текстовое выражение, т.е. в сумму прописью. Сначала ее потребуется занести в книгу. Алгоритм действий:

  • нажимают одновременно на ALT+F11, откроется редактор Visual Basic;
  • добавляют новый пустой модуль посредством меню Insert – Module;
  • копируют и добавляют туда скрипт:
Function СУММАПРОПИСЬЮ(n As Double) As String      Dim Nums1, Nums2, Nums3, Nums4 As Variant      Nums1 = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")   Nums2 = Array("", "десять ", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят ", "девяносто ")   Nums3 = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ")   Nums4 = Array("", "одна ", "две ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")   Nums5 = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ",  "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ")   If n <= 0 Then     СУММАПРОПИСЬЮ = "ноль"     Exit Function   End If   'разделяем число на разряды, используя вспомогательную функцию Class   ed = Class(n, 1)   dec = Class(n, 2)   sot = Class(n, 3)   tys = Class(n, 4)   dectys = Class(n, 5)   sottys = Class(n, 6)   mil = Class(n, 7)   decmil = Class(n, 8)   'проверяем миллионы   Select Case decmil     Case 1       mil_txt = Nums5(mil) & "миллионов "       GoTo www     Case 2 To 9       decmil_txt = Nums2(decmil)   End Select   Select Case mil     Case 1       mil_txt = Nums1(mil) & "миллион "     Case 2, 3, 4       mil_txt = Nums1(mil) & "миллиона "     Case  5 To 20       mil_txt = Nums1(mil) & "миллионов "   End Select   www:   sottys_txt = Nums3(sottys)   'проверяем тысячи   Select Case dectys     Case 1       tys_txt = Nums5(tys) & "тысяч "       GoTo eee     Case 2 To 9       dectys_txt = Nums2(dectys)   End Select   Select Case tys     Case 0       If dectys > 0 Then tys_txt = Nums4(tys) & "тысяч "     Case 1       tys_txt = Nums4(tys) & "тысяча "     Case 2, 3, 4       tys_txt = Nums4(tys) & "тысячи "     Case 5 To 9       tys_txt = Nums4(tys) & "тысяч "   End Select   If dectys = 0 And tys = 0 And sottys <> 0 Then sottys_txt = sottys_txt & " тысяч "   eee:   sot_txt = Nums3(sot)   'проверяем десятки   Select Case dec     Case 1       ed_txt = Nums5(ed)       GoTo rrr     Case 2 To 9       dec_txt = Nums2(dec)   End Select   ed_txt = Nums1(ed)   rrr:   'формируем итоговую строку   СУММАПРОПИСЬЮ = decmil_txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt  End Function  'вспомогательная функция для выделения из числа разрядов  Private Function Class(M, I)    Class = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1))  End Function

Сохраняют файл и возвращаются в Excel. Затем вставляют функцию в любую клетку листа книги привычным способом — через мастер функций или просто набирают ее в ячейке вручную, а в качестве аргумента указывают ячейку с суммой.

  Вставка картинки в Excel и способы закрепления изображения в ячейке

Читайте также:

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

Categories: Формулы

Бывает что, когда пытаешься произвести вычисления с данными, формулы не работают или Excel выдает ошибку. Причины сразу могут быть неясны. Особенно часто проблема встречается после выгрузки из учетных систем, таких как 1С или SAP. Как избежать проблемы, когда формулы не работают? Чаще всего необходимо преобразовать текст в число в Excel. Несколько полезных способов, как бороться с этим несчастьем читайте ниже.

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

1. Преобразовать текст в число. Сделайте формат ячеек — число

С самого начала проверьте формат чисел. Выделите диапазон с данными (на нашем примере столбец B). Нажмите горячую клавишу ctrl + 1 (меню Формат ячеек если правой кнопкой мыши). На вкладке Число выберите Формат ячеек — Числовой.

Очень удобно пользоваться меню Число на главной панели. Здесь сразу доступны удобные форматы. Слева-направо: денежный, процентный, числовой + кнопки уменьшения/увеличения количества знаков после запятой. Рекомендую.

2. Исправьте ошибки — преобразуйте текст в число специальным инструментом

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

В нашем случае Число сохранено как текст — кликните Преобразовать в число. Вуаля!

Это же доступно по адресу Формулы — Раздел Зависимости формул — Проверка формул

3. Умножьте все числа на 1

Не помог предыдущий вариант? Значит, ошибка довольно редкая, но решается просто. Есть крутая хитрость. В столбце С все значения столбца B перемножьте на 1. Да, буквально так, для ячейки C2 запишите =B2*1 и протяните вниз. Так Excel принудительно преобразовывает имеющиеся значения в число.

4. Удалите лишний символ в ячейках при помощи Найти и Заменить

И пункт 3 не помог? Значит в ячейках закрался какой-то символ, например как в ячейке В7 на первой картинке после первого числ стоит символ » «, это может быть даже обычный пробел (поэтому скопируйте именно этот символ). Такими вещами очень часто грешит 1С, причем любой конфигурации.

Пользуемся инструментом Найти и заменить, подробное описание здесь. Если быстро нажимаете ctrl + H, появиться окно.

В поле Найти: вставляем скопированный символ. В поле Заменить на: ничего не ставим (т.е. заменяем на пусто). Жмем Заменить все.

Должно помочь!

5. Функция ЗНАЧЕН

И, конечно, есть универсальный способ применить функцию =ЗНАЧЕН(). Она лечит все ошибки с числами, кроме лишних символов (не касается пробелов), и преобразовывает текст в число. Очень удобно использовать ее для проверок в расчетах, как подстраховку от ошибок.

6. Перевод времени в число

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

P.S.

Кстати, для того чтобы убрать лишние пробелы в начале и конце ячейки с текстом (например, при записи ФИО мы часто ошибаемся и ставим пробел в конце, который не видно), а так же, чтобы убрать двойные пробелы,  есть классная функция =СЖПРОБЕЛЫ(). Она убирает все лишние пробелы!

Поделитесь нашей статьей в ваших соцсетях:

Для выполнения данной операции в Excel предусмотрен механизм копирования. Для этого нужно воспользоваться помощью контекстного меню. Как? Необходимо выделить ячейку(диапазон ячеек) с формулой, после чего правой кнопкой мыши вызвать контекстное меню и выбрать «Копировать только значения»(Copy Here as Values Only). image Но не всегда это то, что необходимо. Мне, например для одной задачи требуется автоматизировать данный процесс. А постоянное копирование и вставка — не выход. К счастью, Excel имеет хороший арсенал возможностей для автоматизации практически всех процессов. Так и в этот раз, я наткнулся на вариант создания макроса: Sub Formulas_To_Values_Selection()     Dim smallrng As Range     For Each smallrng In Selection.Areas         smallrng.Value = smallrng.Value     Next smallrng End Sub В прочем, это тоже не тот вариант, о котором я мечтал. Вернемся к задаче, она связана с вычислением корректного значения контрольного разряда УИН.  ДАНО: ячейка «Е20» =ПСТР($M$1;СТРОКА();1) ячейка «G20»=ОСТАТ(СУММ(G1:G19);11) В результате отображаются значения, в нашем случае «2» и «2». В ячейке «M3» необходимо ввести формулу, которая будет сравнивать данные ячейки. ПРОБЛЕМА заключается в том, что при выполнении формулы =ЕСЛИ(ЗНАЧЕН(E20) = ЗНАЧЕН(G20);»Указан правильно»; «Неправильный») будет всегда выдаваться значение «ЛОЖЬ», то есть «Неправильный», так как сравниваются по сути не цифры, а формулы в ячейках. Поэтому нужно найти возможность для того чтобы он сравнивал конечный результат вычислений в данных ячейках. РЕШЕНИЕ: В этой ситуации помогла функция «ЗНАЧЕН», хотя казалось бы функция ЗНАЧЕН() в MS EXCEL [английский вариант VALUE()], преобразует строку текста в число (там где это возможно). Но она здесь помогает преобразовать формулу в необходимые значения. imageimage

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий