Чому Excel у CSV — це не просто конвертація, а втрата структури
На перший погляд, перетворення файлу Excel (XLSX) на CSV — тривіальна операція. Але насправді це перехід між двома принципово різними форматами даних. XLSX — це стиснутий ZIP-архів, що містить XML-документи з багаторівневою інформацією: кілька аркушів, формули, типи даних (числа, дати, логічні значення), кольори, шрифти, об’єднані клітинки, коментарі. CSV — це звичайний текст, де кожен рядок — один запис, а значення розділені обраним роздільником (кома, крапка з комою або табуляція). Жодне збагачення XLSX не поміщається в CSV. Саме тому цей інструмент виконує прямий зчитування видимих значень лише з першого аркуша, а решта — обрізається.
Все відбувається у вашому браузері. Жоден байт файлу не передається на сервер. Це не технічна дрібниця — це означає, що ви можете конвертувати конфіденційні фінансові таблиці, списки клієнтів або медичні дані, не турбуючись про витік. Обробка на стороні клієнта усуває потребу в завантаженні на зовнішні сервери, які можуть зберігати копії або бути зламані.
Що саме губиться під час конвертації: детальний розбір
Процес перетворення є «втратним» — ви не отримаєте назад XLSX із тією ж інформацією. Ось точний перелік того, що зникає:
- Формули — інструмент читає останнє збережене обчислене значення. Якщо клітинка A1 має формулу
=SUM(B1:B10), у CSV потрапить результат (наприклад,45), а не сама формула. Не можна відновити алгоритм обчислення з CSV. - Типи даних — число, дата, валюта, логічне значення — всі зберігають свої типи. Дата
01.01.2024у Excel може перетворитися на числовий серійний номер (наприклад45324), якщо не вказано формат. Інструмент намагається зчитати відформатоване значення, але це залежить від того, як Excel зберіг число. Якщо в комірці стояло$1,234.56, у CSV ви побачите1234.56(без знака валюти та роздільників тисяч). - Форматування — кольори фону, шрифти, жирний/курсив, рамки, об’єднані клітинки — все ігнорується. Об’єднані клітинки спричиняють порожні комірки в інших рядках, оскільки CSV не знає про об’єднання.
- Кілька аркушів — тільки перший аркуш буде оброблено. Якщо ваш Excel містить три вкладки з різними даними, ви отримаєте CSV лише з першої. Для конвертації інших доведеться завантажувати кожен аркуш окремо або попередньо злити їх.
- Приховані рядки та стовпці — вони не зчитуються. Якщо ви приховали деякі дані, вони не потраплять у CSV. Це може бути несподіванкою, якщо ви очікували побачити всі записи.
Як підготувати Excel-файл до конвертації в CSV
Найпоширеніша помилка — намагатися конвертувати багаторівневі дані, не спростивши їх. Наприклад, комірка, яка містить список через кому (наприклад, «яблуко, груша, вишня»), при використанні коми як роздільника перетвориться на три окремі стовпці, що зруйнує структуру. Тому перед конвертацією:
- Розділіть вкладені дані на окремі стовпці — кожна унікальна категорія має отримати свій стовпець. Наприклад, замість комірки «Петров Іван Олексійович» розмістіть три окремі стовпці: Прізвище, Ім'я, По батькові.
- Зведіть усі аркуші в один — якщо вам потрібні дані з кількох вкладок, використовуйте зведення вручну або функцію Power Query, щоб об'єднати їх у єдиний аркуш.
- Усуньте об'єднані клітинки — вимкніть об'єднання і заповніть дані в усіх комірках. CSV не має механізму для об'єднаних осередків. Клітинка, що залишилася порожньою, з'явиться як порожнє поле.
- Перевірте наявність ком, лапок і переносів рядків всередині комірок — якщо ваші дані містять символи, які збігаються з обраним роздільником, інструмент автоматично візьме значення в подвійні лапки. Але якщо всередині є лапки, їх екранують подвоєнням. Після конвертації радимо відкрити CSV у текстовому редакторі (наприклад, Notepad++ або Sublime Text) і візуально перевірити, чи не розірвало рядки.
- Переконайтеся, що ведучі нулі збережені — числа, які мають починатися з нуля (наприклад,
00123), у CSV можуть перетворитися на123, якщо вихідна комірка Excel зберігала їх як числа, а не як текст. Щоб цього уникнути, відформатуйте стовпець як текст (або додайте апостроф перед числом:'00123). Інструмент зчитує значення таким, яким воно збережене — якщо Excel вважає00123числом, він запише123.
Вибір роздільника — не дрібниця
Інтерфейс дозволяє обрати один із трьох роздільників:
| Роздільник | Коли використовувати | Приклад |
|---|---|---|
Кома (,) |
Стандарт для більшості систем (Excel у США, бази даних, Python/pandas) | Ім'я,Вік,Місто |
Крапка з комою (;) |
Поширена в європейських регіонах, де кома — десятковий роздільник | Ім'я;Вік;Місто |
Табуляція (\t) |
Для імпорту в системи, які не працюють із комами (наприклад, Google Sheets при вставці) | Ім'я\tВік\tМісто |
Помилка вибору роздільника призводить до того, що ваш CSV стане нечитабельним для цільової програми. Наприклад, якщо ви завантажите CSV із комою до Excel з німецькою локалью, Excel може неправильно розпізнати стовпці, бо кома там — десятковий знак. У такому разі обирайте крапку з комою.
Сценарії використання та хто виграє від цього інструменту
- Розробники — отримують Excel від замовника та потребують CSV для завантаження в базу даних (MySQL, PostgreSQL) або для обробки скриптами Python/R. Інструмент дозволяє швидко отримати плоский файл без програмування.
- Аналітики — конвертують фінансові звіти, де потрібно видалити всі формули й залишити лише значення. Коли Excel-файл містить складні обчислення, готовий CSV дає чисті числа для подальшого аналізу.
- Користувачі застарілих систем — деякі ERP або CRM приймають лише CSV. Цей інструмент стає містком між сучасним Excel і legacy-програмним забезпеченням.
- Безпекові вимоги — люди, які працюють із персональними даними (GDPR, HIPAA), обирають клієнтську конвертацію, щоб жодна копія не потрапила на сторонній сервер. Перетворення відбувається повністю у вашому браузері, і жодні дані не завантажуються на сервер.
Типові помилки та їх усунення
Інструмент повідомляє про помилки чітко. Ось найпоширеніші повідомлення та їх причина:
- «Choose one file first.» — ви не вибрали файл або спробували почати конвертацію без файлу.
- «Choose a CSV, JSON or XLSX file.» — завантажили файл невідомого формату, наприклад
.odsабо.xls. Інструмент приймає лише.xlsx,.csv,.json. - «This file is too large. Use a file under ‹max›.» — файл перевищує встановлене обмеження розміру 8 МБ. Якщо це стається, можна спробувати стиснути XLSX (видалити приховані рядки, зменшити кількість аркушів) або використати інший інструмент для великих файлів.
- «This Excel file could not be opened.» — пошкоджений XLSX або захищений паролем. Перевірте, чи відкривається файл у звичайному Excel, зніміть пароль (якщо це можливо) і збережіть нову копію.
- «This file has no table rows.» — перший аркуш не містить даних або всі рядки порожні. Інструмент не обробляє порожні аркуші.
- «This table has more than ‹max› rows.» / «This table has more than ‹max› columns.» — перевищено кількість рядків (10 000) або стовпців (200). Спробуйте розділити файл на частини.
- «Conversion cancelled.» — ви або система перервали процес.
- «This conversion is taking too long. Try a smaller file.» — час обробки перевищив ліміт (приблизно 12 секунд). Зменште обсяг даних.
Поширені запитання (FAQ)
1. Чи можна конвертувати файл.xls (старий формат Excel)? Ні, інструмент приймає лише .xlsx. Старий бінарний формат .xls не підтримується. Спершу збережіть його як .xlsx у сучасному Excel.
2. Якщо моя комірка містить дату, чи буде вона правильною у CSV? Залежить від того, як Excel зберіг дату. Якщо в клітинці було число (наприклад, 45000), інструмент зчитає його як число. Якщо дата була відформатована як текст, вона залишиться рядком «01.01.2024». Рекомендується перевіряти результат.
3. Чи можу я конвертувати файл із захистом листа? Якщо лист захищено паролем на відкриття, інструмент не зможе прочитати його. Якщо лише захист структури (не дозволяє редагувати аркуші), то конвертація все одно відбудеться, оскільки інструмент лише читає дані.
4. Як відкрити отриманий CSV у Excel без втрати нулів?
Після завантаження CSV у Excel використовуйте імпорт через «Дані» → «З тексту/CSV». На етапі вибору роздільника вкажіть правильний і переконайтеся, що стовпці з нулями мають формат «Текст». Якщо просто двічі клікнути на файл, Excel може автоматично змінити 00123 на 123.
5. Чи буде мій файл збережено на сервері? Ні, вся обробка виконується у вашому браузері. Файл не передається на жоден зовнішній сервер. Ви можете перевірити це, відключивши інтернет після завантаження — перетворення все одно спрацює.
6. Що робити, якщо в моєму XLSX кілька аркушів, і мені потрібен не перший? Наразі інструмент обробляє лише перший аркуш. Альтернативи: відкрийте Excel, виділіть потрібний аркуш, скопіюйте його в новий файл і збережіть як XLSX, потім завантажте; або скористайтеся іншими інструментами, які підтримують вибір аркуша.