Как в экселе заменить точку на запятую во всем столбце
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как в Excel заменить все точки в цифрах на запятые. Функция ПОДСТАВИТЬ
В зависимости от региональных настроек операционной системы десятичные знаки числа отделяются запятой (в русской локализации, например), либо десятичные знаки отделяются точкой (в американской локализации, например). Из-за таких различий может возникнуть необходимость заменить все точки на запятые или сделать обратное преобразование.
#ЗНАЧ! в Excel в арифметических операциях (умножение, деление, сложение, вычитание)
К примеру, дан набор данных:
10.25 101.2 20.98 34.23 100.10 43.5
При попытке умножить любое из этих чисел на другое число либо при использовании в других арифметических операциях, а также в формулах, возникнет ошибка:
#ЗНАЧ!
То есть Excel не может выполнить операцию. Дело в том, что для Excel число «10.25» не является числом, а является строкой. Чтобы Excel начала воспринимать «10.25» как число нужно заменить в нём точку на запятую. Это можно сделать автоматически в самой Excel с помощью функции ПОДСТАВИТЬ.
Функция ПОДСТАВИТЬ
Данная функция подставляет значение аргумента «нов_текст» вместо значения аргумента «стар_текст» в текстовой строке. Функция ПОДСТАВИТЬ используется, когда нужно заменить определенный текст в текстовой строке; функция ЗАМЕНИТЬ используется, когда нужно заменить любой текст начиная с определенной позиции.
ПОДСТАВИТЬ(текст;стар_текст;нов_текст;[номер_вхождения])
Аргументы функции ПОДСТАВИТЬ описаны ниже.
Текст
Обязательный. Текст или ссылка на ячейку, содержащую текст, в котором подставляются знаки.
Стар_текст
Обязательный. Заменяемый текст.
Нов_текст
Обязательный. Текст, на который заменяется «стар_текст».
Номер_вхождения
Необязательный. Определяет, какое вхождение фрагмента «стар_текст» нужно заменить фрагментом «нов_текст». Если этот аргумент определён, то заменяется только заданное вхождение фрагмента «стар_текст». В противном случае все вхождения фрагмента «стар_текст» в тексте заменяются фрагментом «нов_текст».
В англоязычной версии функция ПОДСТАВИТЬ называется SUBSTITUTE (перевод функций вы найдёте в статье «Функции Excel на русском»). К тому же, обратите внимание, что на других языках в качестве разделителя может использоваться запятая вместо точки с запятой.
Как заменить все точки в цифрах на запятые
Используйте следующую функцию для заменя точек на запятые:
=ПОДСТАВИТЬ(ЯЧЕЙКА;".";",")
=ПОДСТАВИТЬ(B3;".";",")
Как в Excel заменить все запятые на точки
Для этого используйте функцию вида:
=ПОДСТАВИТЬ(ЯЧЕЙКА;",";".")
Замена символов в столбце
Добро пожаловать на StackOverflow на русском! В чем заключается ваш вопрос? Опишите проблему, отредактируйте вопрос. Какие данные на входе, какие ожидаете получить на выходе? Прочитайте о том, как создать минимальный, но самодостаточный пример, демонстрирующий проблему.
3 авг 2021 в 1:27
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Во-первых вы можете записать создание датафрейма гораздо короче:
df = pd.DataFrame(< 'Наименование': items[1:11], 'Цена': prices[1:11], 'Производитель': brands[1:11] >)
А если у вас будут по-питоновски с нулевого элемента данные идти, то и срезы не нужны, просто указываете список с данными и всё.
А что касается цены, то если она в строковом виде, то можно сделать так:
result = df.copy() result['Цена'] = result['Цена'].str.replace('.', ',')
Но лучше всё-таки числовые данные хранить в виде чисел, а не строк, и тогда запятая или точка — это уже вопрос показа данных, а не их хранения. Сначала нужно ответить на вопрос — зачем вам это нужно?
Как поменять точки на запятые в Excel
В дробных числах в Excel могут использоваться в качестве разделителя точки, либо запятые. Во многих англоязычных странах используют точку, в России же чаще используется запятая. Из-за этого часто возникают различные сложности и требуется менять точки на запятые или наоборот.
Если в настройках у вас стоит использование точки в качестве разделителя, то дробные цифры будут восприниматься программой как текст, и с ними невозможно будет производить различные математические действия.
Настройки использования точки или запятой в Excel 2013 меняются следующим образом. Необходимо войти в Файл | Параметры , далее в открывшемся окне выберите пункт Дополнительно и обратите внимание на пункт “ Использовать системные разделители ”
Если стоит галочка в данном пункте, то Excel будет ориентироваться на системные настройки. Как их изменить мы рассмотрим чуть позже. Если вам необходимо именно сейчас поменять настройки, то необходимо убрать галочку и поставить в пункте “Разделитель целой и дробной части” вместо точки запятую или наоборот.
![]()
Важно! Данные которые уже вставлены в Excel автоматически не преобразуются в число после изменения вышеуказанных настроек. Чтобы их преобразовать в число есть различные способы.
1 способ.Выделить и скопировать эти данные, открыть блокнот на вашем компьютере и вставить эти данные в блокнот и заново скопировать, вернуться в Excel и вставить эти данные обратно обычной вставкой.
2 способ. Просто скопировать данные и заново вставить. В этих ячейках должны появится в углу зеленные треугольники, в данном случае Excel нам подсказывает, что числа сохранены как текст.
![]()
Чтобы преобразовать текст в числа, вам необходимо выделить эти числа, после этого должен появиться желтый ромбик с восклицательным знаком, нажмите на него и выберете пункт “Преобразовать в число”
![]()
Меняем точку на запятую в системных настройках Windows
Очень часто встречается следующая ситуация. Например, вы работаете в каком-нибудь отчете Excel, где используется запятая в качестве разделителя. Периодически вам необходимо выгружать данные из какой-нибудь корпоративной базы, CRM или 1С и вставлять в этот отчет. Но данные из этих систем выгружаются с точками и у вас возникают сложности из-за этого, либо обратная ситуация – вы работаете с точками, а программа выгружает отчет с запятыми.
Так вот в данной ситуации нужно либо настроить программу, если она это позволяет, чтобы данные выгружались с нужным вам разделителем, либо самостоятельно перед выгрузкой поменять у себя на компьютере системные настройки. Те самые которые Excel использует по умолчанию, если стоит галочка напротив этого пункта (смотрите на первый рисунок данной статьи).
Для того, чтобы изменить системные настройки разделителя вам необходимо зайти в меню Пуск | Панель управления | Часы, язык и регион, далее в разделе Язык и региональные стандарты выбрать пункт Изменение форматов даты, времени и чисел
Откроется окно Язык и региональные настройки, перейдите во вкладку Форматы | Дополнительные настройки, откроется окно Настройка формата, во вкладке Числа в поле Разделитель целой и дробной части: поменяйте точку на запятую либо наоборот и нажмите ОК
![]()
После этого можете запускать выгрузку отчета из корпоративной программы, CRM или 1C и ваш отчет будет выгружен с нужным вам знаком. После выгрузки отчета не забудьте поменять настройки обратно, иначе у вас некорректно может работать сам исходный отчет.
Как поменять точки на запятые в Excel в определенном месте
Нередки ситуации, когда работая с отчетом Excel, где используются в качестве разделителя, например, запятые, а вам присылают данные с точками и стоит задача поменять запятые на точки или наоборот. Самый простой способ – это выделить все данные с точками, нажать одновременно Ctrl+H (либо необходимо перейти (Excel 2007-2013) во вкладку Главная, раздел Редактирование, выбрать бинокль и в выпадающем меню выбрать пункт Заменить
![]()
Откроется окно замены, необходимо в поле найти ввести точку, а в Заменить на – запятую либо наоборот в зависимости от ваших нужд и нажать заменить все. Напоминаем, что перед этим желательно выделить те ячейки с данными в которых необходимо поменять точки на запятые, иначе они поменяются во всех данных на листе, в том числе, если они встречаются в тексте или других данных.
![]()
Если вам требуется делать это часто, то можно записать простенький макрос для автоматизации этих действий. Привязать этот макрос к горячим клавишам или кнопке и менять точки на запятые и обратно одним щелчком.
Макрос замены точки на запятую в выделенных ячейках
Sub Макрос_замены_точки_на_запятую() Selection.Replace What:=".", Replacement:="," End Sub
Макрос замены запятой на точку в выделенных ячейках
Sub Макрос_замены_запятых_на_точки() Selection.Replace What:=",", Replacement:="." End Sub
Принцип работы с данными макросами будет прост, просто выделяете нужные ячейки, строки или столбцы с данными, где необходимо поменять точки на запятые или наоборот и запустите соответствующий макрос любым удобным для вас способом.
Важно! При работе с макросами невозможно будет отменить последние действия, поэтому будьте внимательны.
Меняем точки на запятые в Excel с помощью формул
Бывают ситуации, когда в отчете мы работает с точками, но где-то необходимо отразить данные с помощью запятых, например, в диаграммах. Либо как и с ситуацией выше нам присылают данные с другими разделителями и мы хотим эти разделители менять автоматически или у вас есть отчет, в Excel используются запятые, есть сотрудники которые заполняют данные, например, показания каких-нибудь приборов. Сколько вы не бьетесь с ними, они все равно указывают данные то с точками, то с запятыми. В данном случае, можно просто сделать еще один столбец в котором с помощью формулы точки будут меняться на запятые или наоборот.
Для этих целей мы можем использовать функцию ПОДСТАВИТЬ. Данная функция позволяет менять один текст на другой в нужном нам тексте.
Синтаксис данной функции:
ПОДСТАВИТЬ( текст ; стар_текст ; нов_текст ; [номер_вхождения])
![]()
Рассмотрим пример, у нас есть в столбце A данные с запятыми, а мы работает с точками, поэтому эти данные воспринимаются как текст и наша задача состоит в изменении запятых на точки с помощью формул Excel.
В ячейке B1 прописываем формулу
=ПОДСТАВИТЬ(A1;",";".";1)
A1 – это текст , в нашем примере это текст в нашего числа в ячейке A1
«,» – это стар_текст , то есть тот текст который нам необходимо заменить, в нашем случае это запятая.
«.» – это нов_текст то есть тот текст на который нам необходимо заменить старый, в нашем случае это точка.
Последний аргумент мы указали 1 – это необязательный аргумент, по умолчанию Excel подставляет 1, означает, что поиск старого текста происходит с 1 знака. Это может пригодится, если, например, в тексте будет 2 запятые, а нам необходимо заменять вторую запятую, а не первую.
Далее мы протягиваем формулу и получаем список и цифр с точкой, но это еще не всё, преобразованные числа так и остались текстом, поэтому их необходимо конвертировать в числа. Для этого мы будем использовать функцию ЗНАЧЕН
Достаточно предыдущую функцию добавить в ЗНАЧЕН и текстовые данные преобразуются в числовые. Функция будет выглядеть следующим образом.
=ЗНАЧЕН(ПОДСТАВИТЬ(A1;",";".";1))
![]()
Обратите внимание! В данном примере мы работает с точками, поэтому функция будет работать корректно, если же в такой же ситуации мы будем менять точки на запятые, а числовые разряды в настройках у нас разделяются точками, то функция будет выдавать ошибку.
