Объединение текста и чисел
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Предположим, что для подготовки массовой рассылки необходимо создать правильное предложение из нескольких столбцов данных. Или, возможно, вам нужно отформатирование чисел с текстом, не влияя на формулы, в которые эти числа используются. В Excel есть несколько способов объединения текста и чисел.
Отображение текста до или после числа в ячейке с помощью числового формата
Если столбец, который вы хотите отсортировать, содержит как числа, так и текст, например Product #15, Product #100, Product #200, он может отсортироваться не так, как вы ожидали. Ячейки, содержащие 15, 100 и 200, можно отформатирование таким образом, чтобы они появлялись на #15, product #100 и Product #200.
Используйте пользовательский числовом формате для отображения числа с текстом, не изменяя при этом поведение сортировки числа. Таким образом вы можете изменить способ их изменения, не изменяя значение.
Сделайте следующее:
-
Выделите ячейки, которые нужно отформатировать.
-
На вкладке Главная в группе Число щелкните стрелку .
-
В списке Категория выберите категорию, например Настраиваемые, и выберите встроенный формат, похожий на нужный.
-
В поле Тип введите коды числов, чтобы создать нужный формат.
Чтобы в ячейке отображался как текст, так и числа, заключив текстовые символы в двойные кавычка (» «) или перед числами, заключив их в обратное начертение ().
ПРИМЕЧАНИЕ. При редактировании встроенного формата формат не удаляется.
Для отображения |
Используйте код |
Как это работает |
---|---|---|
12 в качестве #12 |
«Product # » 0 |
Текст в кавычках (включая пробел) отображается перед числом в ячейке. В коде «0» представляет число в ячейке (например, 12). |
12:00 по 12:00 по 00:00 по EST |
ч:мм AM/PM «EST» |
Текущее время отображается с использованием формата даты и времени ч:мм. |
-12 из -12,00 долларов США за недостаток и 12 — из-за избыток 12,00 долларов США |
$Избыток» 0,00 долларов США;»Недостаток» — 0,00 долларов США |
Значение отображается в формате валюты. Кроме того, если ячейка содержит положительное значение (или 0), после него отображается значение «Избыток». Если ячейка содержит отрицательное значение, вместо нее отображается значение «Недостаток». |
Объединение текста и чисел из разных ячеек в одной ячейке с помощью формулы
Когда числа и текст объединяются в ячейке, они становятся текстом и перестают работать как числовое значение. Это означает, что с ними больше нельзя выполнять математические операции.
Для объединения чисел используйте функции СОВМЕЩАТЬ или СОВМЕЩАТЬ, ТЕКСТ или ОБЪЕДИНИТЬ, а также оператор амперсанд (&).
Примечания:
-
В Excel 2016, Excel Mobile и Excel в Интернетефункция С ФУНКЦИИ СОВМЕСТИТЬ была заменена функцией СОВМЕСТИМ. Несмотря на то что функция С ФУНКЦИИ СОВМЕСТИТЬ по-прежнему доступна для обратной совместимости, следует использовать функцию СОВМЕСТИМАЯ, так как функция С ФУНКЦИИ СОВМЕСТИМАЯ может быть недоступна в будущих версиях Excel.
-
Объединить объединяет текст из нескольких диапазонов или строк и содержит между текстовыми значениями, которые будут объединены. Если в качестве разделителя используется пустая текстовая строка, функция эффективно объединит диапазоны. В Excel 2013 и предыдущих версиях эта Excel 2013 недоступна.
Примеры
На рисунке ниже приведены различные примеры.
Внимательно посмотрите на использование функции ТЕКСТ во втором примере на рисунке. Если вы присоедините число к текстовой строке с помощью оператора секаций, используйте функцию ТЕКСТ для управления тем, как число отображается. В формуле используется значение из ячейки, на которые ссылается ссылка (в данном примере — 0,4), а не отформатированные значения, которые вы видите в ячейке (40 %). Для восстановления числового форматирования используется функция ТЕКСТ.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
-
Функция СЦЕПИТЬ
-
СЦЕП
-
ТЕКСТ
-
Функция TEXTJOIN
Нужна дополнительная помощь?
Объединение текста и чисел
Смотрите также Randy Ortonпросто попытайтесь в использовать пожалуй вариантЕсли у кого-то несколько раз в ‘собираем текст из в одном - «7»). При его — текст из + муж = значения с одним грамматические ошибки. Для эффективно объединять диапазоны. текст и больше косой черты () образом. Можно отформатироватьПримечание:Суммировать же буквы них разобраться с макросом, который еще есть варианты
одной ячейке. ячеек Next rCell кнопка использовании необходимо помнить, всех ячеек всех любовь!» условием. Например, когда нас важно, чтобыTEXTJOIN не функция числа в начале. ячейки, содержащие 15,Мы стараемся как нельзя. Буквы можно
Используйте числовой формат для отображения текста до или после числа в ячейке
Алексей матевосов (alexm) прислал решения — милостиПример (все это Application.DisplayAlerts = FalseОбъединить и поместить в что: диапазонов будет объединенВ категории необходимо для суммирования эта статья былав Excel 2013 становятся как числовыеПримечание: 100 и 200, можно оперативнее обеспечивать
СЦЕПИТЬ. Типа А: Допустим в ячейкахsnipe просим))) — в одной ‘отключаем стандартное предупреждение центре (Merge andЭтот символ надо ставить
в одно целое:
-
Текстовые определенного продукта total
-
вам полезна. Просим и более ранние значения. Это означает,изменение встроенного формата чтобы они отображались
-
вас актуальными справочными и В сидели столбца с А1.snipe ячейке, в А2): о потере текста Center)
-
в каждой точкеДля массового объединения такжеесть функция sales. вас уделить пару версии не поддерживается.
что больше не не приводит к на листе как материалами на вашем на трубе. по А10 числа,Благодарю!: Public Function iSumma(Текст
154 р. - .Merge Across:=False ‘объединяемв Excel объединять-то соединения, т.е. на
удобно использовать новую |
СЦЕПИТЬ (CONCATENATE) |
При необходимости суммирование значений |
секунд и сообщить, |
Примеры различных на рисунке |
может выполнять любые удалению формат. 15 # продукт, языке. Эта страницаВ ячейке А1 текст и пустыеSvsh2015 As String) As |
булочки; 550 р. ячейки Application.DisplayAlerts = |
ячейки умеет, а |
всех «стыках» текстовых функцию, которая соединяет содержимое с помощью нескольких помогла ли она |
ниже. математических операций наДля отображения |
продукт #100 и |
переведена автоматически, поэтому буква А, в ячейки.: Floyd73,добрый день,вариант функции Double Dim a() — мясо; 120 True .Item(1).Value = вот с текстом строк также, какОБЪЕДИНИТЬ (TEXTJOIN) нескольких ячеек (до |
Объединение текста и чисел из разных ячеек в одной ячейке с помощью формулы
условий, используйте функцию вам, с помощьюВнимательно посмотрите на использование них.Используйте код 200 # продукта. ее текст может ячейке В1 букваФормула суммирования =СУММ uuu в A1
As String a() р. — молоко; Mid(sMergeStr, 1 + сложность — в вы ставите несколько, появившуюся начиная с
255) в одно СУММЕСЛИМН . Например
-
кнопок внизу страницы. функцииДля объединения чисел сПринцип действияИспользование пользовательского числового формата содержать неточности и В (A1:A10)Function uuu(t$) Dim = Split(Текст, «;») 65 р. - Len(sDELIM)) ‘добавляем к живых остается только плюсов при сложении Excel 2016. У целое, позволяя комбинировать нужно добавить вверх Для удобства также
-
текст помощью функции СЦЕПИТЬ12 как Продукт №12 для отображения номера грамматические ошибки. ДляФормулыФормула пропускает пустые i% With CreateObject(«VBScript.RegExp»): For i = яблоки. объед.ячейке суммарный текст текст из верхней нескольких чисел (2+8+6+4+8) нее следующий синтаксис: их с произвольным
Примеры
total sales определенного приводим ссылку на
во втором примере или функции ОБЪЕДИНЕНИЯ,»Продукт № » 0 с текстом, не нас важно, чтобы=A1&B1 ( точно ячейки и с .Pattern = «d+»: 0 To UBound(a())Далее, из ячейки End With End левой ячейки.Если нужно приклеить произвольный=ОБЪЕДИНИТЬ(Разделитель; Пропускать_ли_пустые_ячейки; Диапазон1; Диапазон2 текстом. Например, вот продукта в рамках оригинал (на английском на рисунке. При текст и TEXTJOINТекст, заключенный в кавычки изменяя порядок сортировки эта статья была как в считалке) текстом. Суммирует только
См. также
-
.Global = True
-
asd = Trim(a(i))
-
с такими данными
-
Sub
support.office.com
Способы добавления значений на листе
Чтобы объединение ячеек происходило текст (даже если … ) так: определенной области продаж. языке) . присоединении к числа и амперсанд (&) (включая пробел) отображается число. Таким образом вам полезна. Просим=СЦЕПИТЬ (A1;B1) числовые значения. For i = asd = Mid(asd, нужно вытащить иТеперь, если выделить несколько с объединением текста это всего лишьгдеНюанс: не забудьте оОбщие сведения о том,
Один быстрый и простой в строку текста оператор. в ячейке перед изменение способа отображения вас уделить паруRandy ortonKleom 0 To .Execute(t).Count 1, InStr(1, asd, сложить все числа, ячеек и запустить (как в таблицах точка или пробел,Разделитель пробелах между словами как сложение и для добавления значений с помощью операторПримечания: числом. В этом
номера без изменения
секунд и сообщить,: Вот: =СЧЁТЗ (A1:A3): что значит буквенное? — 1 uuu » «) - в ячейке, например, этот макрос с
Добавление на основе условий
-
Word) придется использовать не говоря уж- символ, который — их надо вычитание дат можно в Excel всего объединения, используйте функцию
-
коде «0» обозначает значения. помогла ли она В скобках диапазон если числа написаны = uuu + 1) iSumma =
Сложение или вычитание дат
А1. помощью сочетания клавиш макрос. Для этого о целом слове), будет вставлен между прописывать как отдельные найти Добавление и воспользоваться функцией Автосумма.текст
Сложение и вычитание значений времени
В Excel 2016Excel Mobile и число, которое содержитсяВыполните следующие действия. вам, с помощью укажи. словами, то придется .Execute(t)(i) Next End iSumma + CDbl(asd)Т.е. в А1
support.office.com
3 способа склеить текст из нескольких ячеек
Alt+F8 или кнопкой откройте редактор Visual то этот текст фрагментами аргументы и заключать
вычитание дат. Более Выделите пустую ячейку, чтобы управлять Excel Online с
в ячейке (например,Выделите ячейки, формат которых кнопок внизу страницы.
Pulse сначала их вручную With End Function
Способ 1. Функции СЦЕПИТЬ, СЦЕП и ОБЪЕДИНИТЬ
Next i End должно получиться числоМакросы Basic на вкладке надо заключать вВторой аргумент отвечает за в скобки, ибо сложные вычисления с непосредственно под столбцом способом отображения чисел. помощью функции
12). требуется изменить. Для удобства также: Нужно, чтобы складывались ввести в числовомSvsh2015 Function
889.на вкладке РазработчикРазработчик - кавычки. В предыдущем то, нужно ли текст. датами, читайте в данных. На вкладке В формуле используетсяОБЪЕДИНЕНИЯ12:00 как 12:00 центральноевропейскоеНа вкладке приводим ссылку на только те ячейки виде, а потом: добавлю еще вариантAlexMПолучается, у нас(Developer — Macros)Visual Basic (Developer - примере с функцией игнорировать пустые ячейкиОчевидно, что если нужно статье даты и « базовое значение иззаменена время
Главная оригинал (на английском в которых содержится складывать, иначе никак… функции,в файл примере: Можно массивной формулой ячейка А1 -
, то Excel объединит Visual Basic)
СЦЕПИТЬ о кавычках
- (ИСТИНА или ЛОЖЬ) собрать много фрагментов, операций со временем.формулы
- ячейки, на которыйфункции СЦЕПИТЬч:мм «центральноевропейское время»в группе
- языке) . числа. Т.е еслиDemetry uuu (и есть
Код =СУММ(—ЕСЛИ(ПРАВБ(ПСТР(A1;СТРОКА($1:$99);6);2)=»р.»;ПСТР(A1;СТРОКА($1:$99);3)))
Способ 2. Символ для склеивания текста (&)
итого, а ячейка выделенные ячейки вили сочетанием клавиш заботится сам Excel
Диапазон 1, 2, 3 то использовать этуОбщие сведения о том,» нажмите кнопку указывает ссылка (в. Несмотря наТекущее время показано вчислоПредположим, что нужно создать в ячейке текст,: =СЧЁТЕСЛИ (A1:A100;»*н*») uuu1)Floyd73 А2 — детализация. одну, слив туда Alt+F11, вставим в
- — в этом… — диапазоны функцию уже не как сложение иАвтосумма данном примере.4) — то, что функция формате даты/времени ч:мм
- щелкните стрелку. предложение грамматически правильные нужно, чтобы онаСчитает в диапазонеFunction uuu#(t$) Dim: Спасибо за стольПри небольшом гуглении же и текст нашу книгу новый же случае их ячеек, содержимое которых очень удобно, т.к. вычитание значений времени> не форматированное значение,
СЦЕПИТЬ AM/PM, а текстВ списке из нескольких столбцов не учитывалась. Справку
от А1 до i%, s# With разнообразные варианты решений! варианта решения не через пробелы. программный модуль (меню надо ставить вручную. хотим склеить
Способ 3. Макрос для объединения ячеек без потери текста.
придется прописывать ссылки отображается Добавление иСумма отображаемое в ячейкепо-прежнему доступен для «московское время» отображаетсякатегории данных для подготовки смотрел, даже пример А100 количество ячеек, CreateObject(«VBScript.RegExp»): .Pattern =Теперь думаю, какой нашел, может бытьFloyd73Insert — ModuleВот, например, как можноНапример: на каждую ячейку-фрагмент
вычитание значений времени.. Excel автоматически будут (40%). Чтобы восстановить обеспечения обратной совместимости, после времени.выберите категорию, например массовой рассылки. Или, есть, но почему в тексте которых «d+»: .Global = из них удобнее неправильно формулирую запрос,: День добрый!) и скопируем туда собрать ФИО вЭто универсальный и компактный по отдельности. Поэтому, Другие вычисления времени,
определения диапазона, который форматов чисел используйте следует использовать-12 как -12р. дефицитнастраиваемые возможно, вам нужно то он у есть буква «н». True For i будет использовать))) конечно…Имеется небольшая задачка, текст такого простого одну ячейку из способ сцепки, работающий начиная с 2016 можно просмотреть даты необходимо суммировать. (Автосумма функциюОБЪЕДИНЕНИЯ и 12 каки нажмите кнопку встроенный форматирование чисел с меня не работает.Алексей матевосов (alexm) = 0 ToКазанскийПодозреваю, что можно
которую нужно реализовать макроса: трех с добавлением абсолютно во всех версии Excel, на и операций со также можно работатьтекст, так как 12р. избыток формат, который похож текстом, не затрагивая_Boroda_
planetaexcel.ru
Вытащить из ячейки числа и сложить их
: После двух часового .Execute(t).Count — 1
: сделать скриптом, но в экселе.
Sub MergeToOneCell() Const пробелов:
версиях Excel. замену функции временем.
по горизонтали при.функции СЦЕПИТЬ0.00р. «избыток»;-0.00р. «дефицит» на то, которое формулы, которые могут: =СУММ(I3;I5;I7;I10) раздумья по данному
s = sFloyd73 работать с ними
Суть задачки вот sDELIM As StringЕсли сочетать это с
ДляСЦЕПИТЬНадпись на заборе: «Катя выборе пустую ячейкуФункция СЦЕПИТЬмогут быть недоступны
Это значение отображается в вы хотите. использовать эти числа.Итог 43 вопросу появилась желание + CDbl(.Execute(t)(i)) Next
, до кучи Function не умею =( в чем.
= » « функцией извлечения изсуммированияпришла ее более
+ Миша + справа от ячейки,СЦЕП в будущих версиях формате «Денежный». Кроме
В поле В Excel существуетСправка вражеская. Там предложить организаторам проекта
uuu = s Fl(x) As Double
Можно решить задачуВ ячейке, например,
‘символ-разделитель Dim rCell текста первых буквсодержимого нескольких ячеек совершенная версия с Семён + Юра чтобы суммировать.)
Функция ТЕКСТ Excel.
того, если вТип несколько способов для разделитель — запятая.
«Вопросы и ответы» End With End Dim y For обычными формулами? А2, записываются данные, As Range Dim - используют знак плюс похожим названием и + Дмитрий Васильевич»Сумма».» />Функция TEXTJOINTEXTJOIN ячейке находится положительноеизмените коды числовых объединения текста и
А у нас усовершенствовать систему начисления Function
Each y InПодскажите, пожалуйста, люди по следующему шаблону:
sMergeStr As StringЛЕВСИМВ (LEFT) «
тем же синтаксисом +Автосумма создает формулу дляПримечание:Объединение текста из значение (или 0), форматов в формате, чисел. — точка с баллов.snipe
Split(Replace(x, «,», «.»), добрые!число, пробел, текст,
If TypeName(Selection) <>, то можно получить+ — функциятоварищ Никитин + вас, таким образом,Мы стараемся как
нескольких диапазонах и/или
после него будет который вы хотитеЕсли столбец, который вы
запятой.Только за прочтения: «;») Fl =OLEGOFF пробел, тире, пробел, «Range» Then Exit фамилию с инициалами», а дляСЦЕП (CONCAT)
рыжий сантехник + чтобы вас не можно оперативнее обеспечивать строки, а также показан текст «(излишек)»,
создать. хотите отсортировать содержитPulse таких вопросов начислятьFloyd73 Fl + Val(y): текст, точка с Sub ‘если выделены одной формулой:склеивания. Ее принципиальное отличие
Витенька + телемастер требуется вводить текст. вас актуальными справочными разделитель, указанный между а если ячейкаДля отображения текста и
числа и текст: баллы, а за
, все присланные вам Next End Function
CyberForum.ru
Подскажите пожалуйста как в excel посчитать сумму если значение в ячейке буквенное но нужно сложить все ячейки!???
Floyd73 запятой (или точка), не ячейки -Имеем текст в несколькихсодержимого ячеек используют в том, что
Жора + Однако при желании
материалами на вашем каждой парой значений, содержит отрицательное значение, чисел в ячейке,
— 15 #_Boroda_ ответ баллы умножать примеры заслуживают изученияAlexM, с помощью опции пробел (ставится после выходим With Selection
ячейках и желание знак «
теперь в качествесволочь Редулов + введите формулу самостоятельно языке. Эта страница который будет добавляться
Excel. Как сложить ячейки в excel , если в ячейках забита буква а не цифра ?
после него будет заключите текст в продукта, продукт #100, Спасибо! Выходит в на коэффициент. с целью понимания: Вариант с макросом » Текст по
точки с запятой, For Each rCell — объединить эти& аргументов можно задавать
не вспомнить имени, просматривать функцию сумм. переведена автоматически, поэтому текст. Если разделитель
показан текст «(недостаток)». двойные кавычки (» и 200 # справке ошибка?!И так. Ячейки,
помимо моей функции универсальный столбцам» можно так после точки не
In .Cells sMergeStr
ячейки в одну,» (расположен на большинстве
не одиночные ячейки,
длинноволосый такой +Используйте функцию СУММЕСЛИ , ее текст может пустую текстовую строку,
Сложение ячеек содержащих текст (Сложение ячеек содержащих текст)
При объединении чисел и «), или чисел продукта — неPulse содержащие значения, можно вам предложены болееFloyd73Floyd73 ставится). = sMergeStr & слив туда же клавиатур на цифре
а целые диапазоныещё 19 мужиков
если нужно суммировать
содержать неточности и эта функция будет текста в ячейке, с помощью обратной может сортировать должным
: Капец! считать, как показал красивые решения: Всем спасибо, буду: Спасибо за решение.
И так далее, sDELIM & rCell.Text
excelworld.ru
их текст. Проблема
Часто в отчетах 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-макросе мы просто берем значение и формат из исходной ячейки и подставляем его как текстовую строку. Так наша формула с пользовательской макрофункцией ВЗЯТЬФОРМАТ автоматически определяет валюту для каждой суммы в исходных значениях ячеек.
17 авг. 2022 г.
читать 2 мин
Вы можете использовать следующую базовую формулу для суммирования ячеек в Excel, содержащих как числа, так и текст:
=SUM(SUBSTITUTE( B2:B8 , "some_text", "")+0)
Эта конкретная формула удаляет текстовую строку «some_text» из каждой ячейки в диапазоне B2:B8 , а затем вычисляет сумму значений в диапазоне B2:B8 .
Следующие примеры показывают, как использовать эту формулу на практике.
Пример 1: вычислить сумму ячеек с текстом и числами
Предположим, у нас есть следующий набор данных, который показывает общее количество продаж в семи разных магазинах:
Чтобы рассчитать сумму продаж, мы можем ввести следующую формулу в ячейку B10 :
=SUM(SUBSTITUTE( B2:B8 , " items", "")+0)
Как только мы нажмем Enter , будет показана сумма элементов:
Сумма проданных товаров равна 97 .
Эта формула просто заменяла пробел вместо «элементов» в каждой ячейке, а затем вычисляла сумму значений, оставшихся в ячейках.
Пример 2: вычислить сумму ячеек с разным текстом и числами
Предположим, у нас есть следующий набор данных, который показывает общее количество продаж в семи разных магазинах:
Чтобы рассчитать сумму продаж, мы можем ввести следующую формулу в ячейку B10 :
=SUM(SUBSTITUTE(SUBSTITUTE( B2:B8 , " items", ""), "things", "")+0)
Как только мы нажмем Enter , будет показана сумма значений в столбце B:
Сумма проданных товаров равна 97 .
Эта формула просто подставляла пробел вместо «предметов» и «вещей» в каждой ячейке, а затем вычисляла сумму значений, оставшихся в ячейках.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:
Как заменить пустые ячейки нулем в Excel
Как заменить значения #N/A в Excel
Как суммировать, если ячейки содержат текст в Excel
МЕНЮ САЙТА
КАТЕГОРИИ РАЗДЕЛА ОПРОСЫ |
Число сохранено как текст или Почему не считается сумма?
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ] |
Многие пользователи сталкиваются с проблемой, почему при попытках суммировать число, у них этого не получается сделать. Что же, давайте разберемся в причинах этой проблемы более детально. Чаще всего это происходит по причине того, что число было сохранено в текстовом формате. Сегодня мы найдем причины этого явления, а также научимся решать ее разными методами.
Содержание
- Возможные причины, почему не считается сумма
- Число сохранено, как текст
- Способы решения проблемы
- Маркер ошибки и тег
- Операция Найти/Заменить
- Специальная вставка
- Инструмент Текст по столбцам
- Формулы
- Макросы
- В записи числа имеются посторонние символы
- Способы решения проблемы
- Операция Найти/Заменить
- Формула
- Выводы
Возможные причины, почему не считается сумма
Очень часто сумма не хочет считаться после того, как в Excel были скопированы данные из других программ. И в ходе использования этой информации обнаруживается, что числа не получается суммировать, а между датами не получается понять, сколько прошло дней.
Число сохранено, как текст
Как можно понять, что число было сохранено в текстовом формате? Чтобы сделать это, нужно посмотреть, к какому краю число было прижато. Кроме этого, при импортировании данных может показываться зеленый треугольник, который сигнализирует об ошибке перевода данных в правильный формат. Если навести на него мышью, то он и покажет, что число было записано в текстовом формате.
Способы решения проблемы
При этом если попытаться изменить формат ячейки с помощью стандартных средств Excel, то ничего не получится. Правда, если поставить курсор ввода текста в поле ввода формулы, после чего нажать кнопку «Enter», то проблема решается. Но очевидно. что это очень неудобный метод, когда речь идет об огромном количестве ячеек.
Правда, есть много других способов, как выкрутиться из этой ситуации.
Маркер ошибки и тег
Прежде всего, можно воспользоваться непосредственно маркером, сигнализирующем об ошибке. Если есть на ячейке тег зеленого цвета, то нажав по нему, появляется возможность сразу превратить ее в текстовый формат. Для этого в появившемся меню нажимаем на «Преобразовать в число».
Операция Найти/Заменить
Еще один метод решения ситуации, при которой числа записываются в текстовом формате – использовать операцию «Найти/заменить». Допустим, в каких-то ячейках содержится число, имеющее десятичную запятую, сохраненные в текстовом формате. Для этого нужно нажать соответствующую кнопку на ленте или в верхнем меню (в зависимости от используемой версии Excel). Появится окно, в котором нужно заменить запятую на саму себя. Да, в буквальном смысле, нужно в поле «Найти» ввести запятую и в поле «Заменить» также ввести запятую. После этого формат должен быть преобразован автоматически. В принципе, операция аналогична клику на строку формул и дальнейшему нажатию по кнопке ввода. Та же операция может быть и с датами, только нужно точку заменять на точку.
Если же данные были импортированы из других программ, то причина может быть еще и в разности форматов десятичных значений. Если в ячейке в качестве разделителя служит точка, а не запятая, то Эксель не будет эти данные распознавать, как числовые. В таком случае нужно заменить точку на запятую в соответствующих ячейках.
Специальная вставка
Использование «Специальной вставки» – это достаточно универсальный метод, поскольку позволяет превращать в формат чисел любые цифры, относящиеся к любому виду как дробному, так и целым числам. Также его можно использовать для того, чтобы переводить даты в соответствующий формат. Чтобы использовать эту функцию, необходимо найти любую пустую ячейку, выделить ее и скопировать ее. После этого нажимаем правой кнопкой мыши по любой ячейке, формат которой неправильный, после чего нажимаем кнопки «Специальная вставка» – «Сложить» – «ОК». Это аналогичная добавлению нуля операция. Значение ячейки не меняется абсолютно, но ее формат превращается в числовой. Также можно использовать умножение диапазона значений на единицу.
Инструмент Текст по столбцам
Этот инструмент наиболее удобно применять, если используется всего одна колонка. Если их больше, ничего страшного, но придется использовать его по отдельности для каждой колонки. Чтобы это сделать, нужно выделить соответствующий столбец, выставить числовой формат и выполнить команду «Текст по столбцам», которая находится во вкладке «Данные».
Формулы
Очень популярный способ решения проблем с отображением ячеек – использование функции ПОДСТАВИТЬ(), ЗНАЧЕН() и некоторыми другими формулами. Этот способ можно использовать, если есть возможность использовать дополнительные столбцы, в которые может вводиться формула. Можно использовать и другие математические операции, такие как двойной минус (—), добавление к числу нуля, умножение на единицу и любой другой подобной операции. После этого получившиеся ячейки копируются и вставляются в те места, в которых до этого были значения в текстовом формате.
Макросы
Отдельное внимание стоит уделить использованию макросов для исправления ошибок. В принципе, можно использовать любой предыдущий способ через макрос, поэтому мы его отдельно приведем. Достаточно просто написать соответствующий скрипт и выполнить его. А вот некоторые примеры, которые можно использовать.
Sub conv()
Dim c As Range
For Each c In Selection
If IsNumeric(c.Value) Then
c.Value = c.Value * 1
c.NumberFormat = «#,##0.00»
End If
Next
End Sub
Этот код умножает текстовое значение на единицу.
Sub conv1()
Selection.TextToColumns
Selection.NumberFormat = «#,##0.00»
End Sub
А это код, демонстрирующий использование инструмента «Текст по столбцам».
В записи числа имеются посторонние символы
Способы решения проблемы
Также частой причиной, почему начинают отображаться числа в виде текста, является появление в соответствующих ячейках невидимых символов. Наиболее часто ими служат пробелы, которые могут находиться в каком-угодно месте, начиная началом и концом числа и заканчивая использованием их для отделения разрядов друг от друга.
Еще один тип пробелов, который может мешать сохранению ячейки в правильном формате – это так называемый неразрывный пробел (имеющий код 160). Описанного выше способа для решения этой проблемы недостаточно. Чтобы решить возникшую проблему, необходимо скопировать этот символ непосредственно с ячейки, а потом вставить в поле «Найти» или же набрать в этом поле комбинацию Alt + 0160 (но на ноутбуках такой номер не получится, потому что требуется цифровая клавиатура для выполнения этой задачи).
Для обычного человека вообще не всегда понятно, что такое неразрывный пробел и где он может использоваться. Чтобы стало более понятно, давайте посмотрим на этот текст.
На первый взгляд, ничего особенного. Но если человек хоть немного работал с текстами, он сразу поймет, что разбивка этого фрагмента на строки далека от удачной. Давайте посмотрим на него более внимательно. Например, инициалы и фамилия были разделены, что не очень хорошо. То же самое касается номера года и сокращенного обозначения года.
Также неудачно оказалось разделение фамилии «Палажченко» и обозначения его должности. В результате, выглядеть этот фрагмент текста стал, как прямая речь.
Простыми словами, в этом фрагменте содержатся куски, где следует использовать пробел. Но в результате этого пробела теряется аккуратность оформления. И чтобы этого добиться, нужно использовать символ неразрывного пробела. С его помощью мы также разделяем слова, но при этом они остаются на одной строке. Слова, разделенные им, воспринимаются программой, как одно цельное слово, но при этом выглядят, как несколько. Получается эдакий компромисс между тем, как отображается текст и как он воспринимается программой. То есть, если окажется, что нужно их переносить на новую строку, то переноситься будут они все. Их нужно применять в таких ситуациях:
- Перед тире, которое находится посередине строки. Только в трех случаях допускается использование тире в начале строки: если используется прямая речь, если тире маркирует элемент списка и при условии, что тире заменяет прочерк. Чтобы тире не переносилось на новую строку, перед ним нужно поставить неразрывный пробел.
- Между числом и единицей измерения. Довольно часто эта проблема случается. В результате человек может перенести в таблицу Excel число с неразрывным пробелом, а единица измерения окажется в другой ячейке. В целом, использовать в таком случае неразрывный пробел нужно, чтобы не разделять их. Но вот при переносе в Эксель могут возникнуть проблемы.
- Перед знаком процента. В таком случае ячейка может не переводиться в процентный формат. Конечно, не везде можно встретить знак процента, отделенный от числа пробелом, но некоторые считают, что так правильно. Поэтому при переносе в Эксель данные могут отображаться в текстовом формате. То же касается и обычного пробела.
- Знак номера и параграфа. Такая ситуация также часто возникает, когда приходится переносить разделы учебников или части документов в электронные таблицы.
- Многозначные числа. Самая частая причина, почему неразрывные пробелы переносятся в таблицу Excel. По правилам в многозначных числах обязательно ставить пробелы, чтобы упростить их чтение пользователями. Но если число слишком большое, то оно может автоматически перенестись частями на следующую строку. Чтобы решить эту проблему, используется неразрывный пробел. И если такое число скопировать в ячейку, она будет автоматически отображаться в текстовом формате.
Как правило, неразрывные пробелы оказываются в Excel после того, как данные были перенесены из документа Word.
Возможности так легко обнаружить неразрывные пробелы средствами Excel нет. Но если скопировать содержимое ячейки в Word и включить опцию отображения непечатаемых символов, то можно увидеть своеобразные кружочки, которые похожи на знак градуса, только чуть большего размера. Это как раз и есть эти пробелы.
Этот символ есть в любом шрифте. Как правило, все программы, предназначенные для работы с текстом, правильно его обрабатывают. При этом в некоторых из них неразрывные пробелы одинакового размера. Из-за этого наблюдаются проблемы с отображением страницы по ширине, поскольку обычные и неразрывные пробелы имеют одинаковые размеры.
Может понадобиться вводить неразрывный пробел и в Excel. Чтобы это сделать, нужно нажать комбинацию клавиш ALT и 0160. Также в стандартной комплектации Windows предусмотрена комбинация горячих клавиш CTRL + SHIFT + ПРОБЕЛ, с помощью которой можно вводить неразрывный пробел почти в любой программе.
Существует два основных способа решения этой проблемы – воспользоваться функцией «Найти/Заменить» или же использовать формулу.
Операция Найти/Заменить
Чтобы убрать пробелы, можно воспользоваться функцией «Найти/Заменить». В первое поле нужно ввести знак пробела, в то время как нижнее поле оставляем пустым.
Важно убедиться, что там пробелов нет.
Формула
Использование формулы также возможно для удаления пробелов. В зависимости от того, пробел обычный или неразрывный, нужно использовать разные формулы. Также есть одна универсальная, которая позволяет убрать одновременно все пробелы, содержащиеся в ячейке.
Что это за формулы?
Во всех случаях используется функция ПОДСТАВИТЬ. Если нам нужно убрать обычный пробел, то используется следующая формула.
=—ПОДСТАВИТЬ(B4;» «;»»)
С помощью двойного знака минуса мы выполняем конвертацию текстового значения в числовое. Это эквивалент тому, что мы умножили получившееся число на -1, а потом получившееся отрицательное значение снова умножили на -1. В результате, ничего не изменилось, но благодаря выполненной математической операции ячейка автоматически сконвертирована в числовой формат.
В случае с неразрывными пробелами формула будет такой.
=—ПОДСТАВИТЬ(B4;СИМВОЛ(160);»»)
Как видим, здесь в качестве второго аргумента мы используем код символа. А с помощью этой формулы можно убрать как обычные, так и неразрывные пробелы.
=—ПОДСТАВИТЬ(ПОДСТАВИТЬ(B4;СИМВОЛ(160);»»);» «;»»)
Иногда проблема оказывается намного сложнее, чем может показаться на первый взгляд. Поэтому в ряде случаев приходится комбинировать все описанные выше методы.
Выводы
Таким образом, проблема, почему не получается суммировать несколько чисел, оказывается не такой сложной, как может показаться на первый взгляд. Решить ее очень просто, достаточно просто знать некоторые функции Excel.
Оцените качество статьи. Нам важно ваше мнение:
You can use the following basic formula to sum cells in Excel that contain both numbers and text:
=SUM(SUBSTITUTE(B2:B8, "some_text", "")+0)
This particular formula removes the text string “some_text” from each cell in the range B2:B8 and then calculates the sum of the values in the range B2:B8.
The following examples show how to use this formula in practice.
Example 1: Calculate Sum of Cells with Text and Numbers
Suppose we have the following dataset that shows the total number of sales at seven different stores:
To calculate the sum of sales, we can type the following formula into cell B10:
=SUM(SUBSTITUTE(B2:B8, " items", "")+0)
Once we press Enter, the sum of the items will be shown:
The sum of the items sold is 97.
This formula simply substituted a blank where “items” used to be in each cell and then calculated the sum of the values remaining in the cells.
Example 2: Calculate Sum of Cells with Different Text and Numbers
Suppose we have the following dataset that shows the total number of sales at seven different stores:
To calculate the sum of sales, we can type the following formula into cell B10:
=SUM(SUBSTITUTE(SUBSTITUTE(B2:B8, " items", ""), "things", "")+0)
Once we press Enter, the sum of the values in column B will be shown:
The sum of the items sold is 97.
This formula simply substituted a blank where “items” and “things” used to be in each cell and then calculated the sum of the values remaining in the cells.
Additional Resources
The following tutorials explain how to perform other common tasks in Excel:
How to Replace Blank Cells with Zero in Excel
How to Replace #N/A Values in Excel
How to Sum If Cells Contain Text in Excel