Что такое файлы Excel и CSV?

Файл Excel (XLSX или XLS в старых версиях) — это рабочая книга: она может содержать много листов, а каждая ячейка хранит своё значение вместе с числовым форматом, например датой, процентом или валютой. CSV (значения, разделённые запятыми) — это обычный текст, в котором каждой строке соответствует одна запись, а ячейки разделены запятыми. В нём нет листов, форматов и формул, поэтому его могут читать почти все программы: базы данных, скрипты, веб-приложения и другие электронные таблицы.

Преобразование между этими форматами — повседневная задача. Вы экспортируете лист в CSV, чтобы импортировать его в другое место, а экспортированный файл CSV преобразуете в файл Excel, чтобы сортировать, фильтровать и отправлять его другим.

Описание инструмента

Этот инструмент преобразует файлы Excel в CSV и CSV в Excel прямо в браузере. Выберите файл XLSX, XLS или ODS, укажите лист и получите CSV со значениями в том виде, в каком они отображаются на листе. Или вставьте CSV либо выберите файл CSV и скачайте файл XLSX, в котором числа, даты и значения TRUE/FALSE будут настоящими значениями Excel, а не текстом. Кнопка переключения меняет направление преобразования, чтобы вы могли проверить результат обратного преобразования.

Возможности

  • Читает файлы XLSX, XLSM, XLSB, XLS (Excel 97–2003 и более ранние версии), шаблоны Excel и файлы OpenDocument (ODS)
  • Позволяет выбрать любой лист рабочей книги, в том числе скрытый; скрытые листы отмечены
  • Записывает каждое значение в том виде, в каком его показывает Excel, например 25.6%, 1,234.50 или 15.01.2024
  • Записывает даты в стандартном коротком формате Excel как даты ISO (2024-01-15), которые любая программа распознает правильно
  • Сохраняет длинные числа целиком, например 123456789012345, тогда как при экспорте в CSV средствами Excel получится 1.23457E+14
  • Сам определяет разделитель в CSV: запятую, точку с запятой, табуляцию или вертикальную черту
  • Преобразует числа, значения TRUE/FALSE и даты ISO в настоящие значения Excel, а такие значения, как 00123, сохраняет как текст
  • Подбирает ширину столбцов нового файла XLSX по их содержимому
  • Показывает предварительный просмотр листа со строками и столбцами до скачивания
  • Работает в браузере, поэтому ваши файлы не покидают устройство

Как это работает

Инструмент использует SheetJS — широко применяемую библиотеку для электронных таблиц, которая читает и записывает рабочие книги, — и Papa Parse — быстрый парсер CSV, который читает файлы CSV. Преобразование выполняется в фоновом потоке, поэтому страница остаётся отзывчивой даже при работе с большими файлами.

При преобразовании из Excel в CSV каждая ячейка записывается с применённым к ней числовым форматом, как при выборе в Excel команды «Сохранить как CSV», а формулы записываются как их последние вычисленные значения. Исключение составляют ячейки с форматом «Общий»: Excel отображает в них не более 11 символов, поэтому в CSV записывается полное число, округлённое до 15 цифр, которые хранит Excel. Ячейки, содержащие запятую, кавычку или перенос строки, заключаются в двойные кавычки, а файл сохраняется в UTF-8.

При преобразовании из CSV в Excel каждая ячейка становится:

Ячейка CSV Ячейка Excel
42, -3.5, 1e6 Число
00123, +123, 1,234 Текст, чтобы сохранить нули и знаки
Целые числа длиннее 15 цифр Текст, поскольку Excel округлил бы их
TRUE, false TRUE или FALSE
2024-01-15, 2024-01-15 10:30, 2024-01-15T10:30:00 Дата или дата и время
Всё остальное, включая =SUM(A1:A3) Текст

Другие форматы дат, например 01/02/2024 или 15.01.2024, остаются текстом, поскольку в разных странах одни и те же цифры могут обозначать разные даты. Пустые строки в CSV остаются пустыми строками.

Советы

  • Если при открытии CSV в Excel все строки оказываются в одном столбце, преобразуйте файл здесь: разделитель будет определён автоматически.
  • Чтобы при открытии CSV в Excel буквы нелатинских алфавитов отображались правильно, сначала преобразуйте файл в XLSX.
  • Файлы CSV читаются в кодировке UTF-8 или UTF-16, а если она не распознана — как текст в западноевропейской кодировке Windows-1252. Для других алфавитов сохраните CSV в Excel как «CSV UTF-8».

Примечания

  • CSV содержит один лист. Чтобы преобразовать всю рабочую книгу, скачайте CSV каждого листа.
  • Файлы рабочих книг, защищённые паролем, прочитать нельзя. Сначала удалите пароль в Excel.
  • Формулы не сохраняются ни в одном направлении: в CSV формул нет, поэтому ячейка с =SUM(A1:A3) в CSV станет текстом.
  • Форматирование, например цвета, шрифты, объединённые ячейки и диаграммы, не поддерживается в CSV.
  • Лист Excel вмещает до 1 048 576 строк и 16 384 столбцов, а ячейка — до 32 767 символов.