Excel неправильно открывает CSV: что делать
CSV — простая текстовая таблица, но Excel при открытии двойным щелчком часто её портит: склеивает столбцы, ломает буквы и «исправляет» числа. Разберём каждую проблему и покажем, как увидеть данные без искажений.
Всё в одном столбце
Значения в CSV разделены запятой, точкой с запятой или табуляцией. Excel при двойном щелчке берёт разделитель из региональных настроек Windows: в русской Windows это точка с запятой. Если файл через запятые, каждая строка целиком попадает в первый столбец.
Кракозябры вместо букв
Выгрузки из сайтов и сервисов обычно в UTF-8, а Excel при двойном щелчке часто читает файл в старой кодировке Windows — и вместо «Петров» появляется «РџРµС‚СЂРѕРІ». Подробнее — в статье про кракозябры.
Пропали нули, числа стали 1,23E+15
Excel сразу пытается угадать тип каждой ячейки и меняет данные:
- артикул
00123становится123— ведущие нули пропадают; - длинные номера — карты, счета, штрихкоды — превращаются в
1,23E+15, а цифры после пятнадцатой заменяются нулями; - значения вроде
1-2или3.10становятся датами.
Если после этого сохранить файл, искажения останутся в нём навсегда.
Больше миллиона строк
На листе Excel помещается 1 048 576 строк. Если в CSV их больше, Excel сообщает, что файл загружен не полностью, и показывает только начало.
Посмотреть CSV как есть в OsonKit
Перетащите файл на OsonKit. Разделитель — запятая, точка с запятой, табуляция или вертикальная черта — и кодировка определяются сами. Значения показываются ровно так, как записаны в файле: нули, длинные номера и «похожие на даты» строки не меняются. Файл читается в браузере и никуда не отправляется.
- Файлы до 20 МБ и до 1 000 000 строк; у более длинных показываются первые строки, и строка состояния об этом сообщает.
- Большие таблицы прокручиваются плавно, поиск подсвечивает все подходящие ячейки.
- Это просмотрщик: таблицу можно читать и искать, но не редактировать.
Как открыть CSV в Excel правильно
Не открывайте файл двойным щелчком, а импортируйте: «Данные» → «Из текста/CSV». В окне предпросмотра выберите кодировку (UTF-8) и разделитель, а в «Преобразовать данные» задайте столбцам с номерами и артикулами текстовый тип. Если строк больше миллиона, выберите «Загрузить в…» → «Только создать подключение» и отметьте «Добавить эти данные в модель данных»: их можно будет анализировать сводной таблицей.