CSV: запятая или точка с запятой? Как поменять разделитель и почему всё слиплось

Открываете CSV, а вся строка — в первом столбце: «Артикул,Название,Цена» одной ячейкой. Это не сломанный файл, это несовпадение разделителей. Разберёмся, кто виноват и как починить.

Почему Excel кладёт всё в один столбец

CSV — «значения, разделённые запятыми» — только по названию. На практике разделитель зависит от региональных настроек системы:

  • Русская Windows: разделитель списков — точка с запятой (;), потому что запятая у нас — десятичный разделитель в числах.
  • Английская Windows и большинство веб-систем: запятая (,).
  • Встречаются и табуляция, и вертикальная черта — у банков и самописных выгрузок.

Excel при открытии CSV использует разделитель из региональных настроек. Файл с запятыми на русской Windows → всё в одном столбце. Файл с точкой с запятой на английской — то же самое наоборот.

Как открыть правильно, не меняя файл

«Данные» → «Получить данные» → «Из текстового/CSV-файла» → в окне предпросмотра выберите разделитель вручную. Excel покажет, как лягут колонки, до загрузки. Работает, но каждый раз заново — и не решает задачу «переслать коллеге, у которого другая Windows».

Как поменять разделитель в самом файле

Первая мысль — «Найти и заменить»: запятую на точку с запятой. Не делайте так. Запятая встречается не только между полями, но и внутри текста («Свёрла по металлу, набор 19 шт.») — замена разорвёт такие строки на лишние колонки. В корректном CSV текст с запятыми обёрнут в кавычки, и только разбор с учётом кавычек отличает разделитель от текста.

Быстрый путь: загрузите файл в конвертер CSV — он сам определяет разделитель при чтении, а на выходе отдаёт XLSX или CSV с точкой с запятой, как ждёт русский Excel:

CSV с нестандартным разделителем, разобранный по колонкам
Файл с «чужим» разделителем разобран по колонкам автоматически
Экспорт в XLSX после разбора разделителя
На выходе — XLSX или CSV с точкой с запятой

Какой способ когда подходит

СпособКогда братьКогда нет
Импорт с выбором разделителяРазовый файл, дальше работаете в ExcelФайл уходит дальше в другую систему
Найти и заменитьНикогда (ломает текст с запятыми)—
КонвертерФайл для чужой системы/коллеги, нужен предсказуемый разделительНужно остаться в исходном файле

Частые вопросы

Какой разделитель «правильный»?

Оба. Стандарт RFC 4180 описывает запятую, но локализованный Excel исторически ждёт точку с запятой. Ориентируйтесь на принимающую сторону: для русского Excel — ;, для API и англоязычных систем — ,.

А если в тексте есть и кавычки, и разделитель?

По стандарту поле оборачивается в кавычки, а внутренние кавычки удваиваются: "Набор ""Профи"", 19 шт.". Не все выгрузки так делают — «кривой» CSV ломает наивные парсеры. В конвертере включён терпимый разбор: он вытащит максимум даже из побитого файла.

Можно ли поменять разделитель, не открывая Excel?

Да — конвертер делает это без Excel вообще: загрузили, скачали. Заодно можно вычистить мусор из колонок и отфильтровать лишние строки.

Почему после конвертации числа стали текстом?

Если в числах разделитель тысяч пробелом или точка вместо запятой — Excel видит текст. Это решается чисткой колонки: как убрать пробелы в цифрах.