Конвертер Excel в XML
Превратите таблицу Excel (XLSX, XLSM) в XML: каждая строка — запись, поля — элементы с именами столбцов, исходные заголовки сохранены, первый лист или все листы книги
Инструмент справился с вашей задачей?
Одно нажатие, без регистрации. По ответам мы решаем, какие инструменты дорабатывать первыми.
Ваш ответ здесь будет первым.
Этот инструмент ещё ждёт первого комментария
Нашли приём, остался вопрос или чего-то не хватило — напишите, пригодится следующим. Без почты и пароля · публикуем после проверки, обычно за 1–2 дня
Конвертировать Excel в XML онлайн — строки таблицы в элементы с именами столбцов
XML — текстовый формат разметки, в котором данные лежат внутри элементов с именами в угловых скобках, а элементы вкладываются друг в друга. Из XML загружают справочники и каталоги, его читают программы и скрипты на Python, Java и PHP. Таблицу Excel переводят в XML, когда её данные нужны такой программе: строка таблицы становится элементом-записью, а ячейки этой строки — вложенными элементами-полями с именами столбцов.
Этот конвертер переводит книгу Excel в XML онлайн: загрузите файл .xlsx или .xlsm размером до 50 МБ, выберите «Первый лист» или «Все листы» и нажмите «Конвертировать в XML». Готовый файл называется так же, как книга, только с расширением .xml: из «Прайс май 2026.xlsx» получится «Прайс май 2026.xml». Под кнопкой скачивания конвертер пишет, сколько записей получилось и какой лист он взял, а если в книге есть формулы без сохранённых значений — сколько их.
- Принимаем книги .xlsx и .xlsm размером до 50 МБ
- Строка таблицы — элемент row, поля — элементы с именами столбцов
- Первый лист — элемент rows, все листы — элемент workbook с листами sheet
- Пустая ячейка — без элемента, даты — вида 2025-12-31, логические — true и false
- Регистрация не нужна, а файл удаляется с сервера сразу после обработки, самое позднее — через 20 минут
Как устроен XML из таблицы: элементы, имена столбцов и значения
При варианте «Первый лист» документ начинается строкой <?xml version="1.0" encoding="UTF-8"?>, корневой элемент называется rows, а внутри у каждой строки таблицы свой элемент row. В row лежат поля — например, <Кол-во_шт.>12</Кол-во_шт.> и <Цена_руб.>89.9</Цена_руб.>. Вариант «Все листы» даёт корневой элемент workbook, в котором у каждого листа с данными свой элемент sheet, а имя листа записано в атрибуте name: листы идут по порядку книги, скрытые тоже попадают, пустые пропускаются. Кавычки, угловые скобки и амперсанд в имени листа экранируются. Документ записан в UTF-8 без метки BOM, с отступом в два пробела, и его разбирают и xmllint, и стандартная библиотека Python.
Имя элемента берётся из заголовка столбца — первой заполненной строки листа — и приводится к правилам XML. Буквы остаются — и латиница, и кириллица; цифры, дефис и точка — тоже. Пробелы, скобки, запятые и другие знаки становятся «_», несколько подряд — одним «_», а в конце имени просто убираются: «Наименование товара» превращается в Наименование_товара, «Кол-во, шт.» — в Кол-во_шт., «Цена (руб.)» — в Цена_руб., «Активен?» — в Активен. С цифры имя начинаться не может, поэтому столбец «2024» станет _2024. Пустой заголовок получает имя по номеру столбца, например Столбец_12, а повторяющийся — окончание «_2»: второй «Наименование товара» станет Наименование_товара_2. Двух одинаковых элементов в одной записи не бывает.
Если хоть одно имя отличается от заголовка, в начале таблицы появляется блок columns: в нём один раз записано, какому исходному заголовку соответствует каждый элемент, — например, элемент Цена_руб. и заголовок «Цена (руб.)». Если все заголовки уже годятся в имена, блока нет. Пустая ячейка элемента не получает вовсе — полей, которых нет в строке, в записи просто нет. Значения записываются так же, как в JSON: числа — без формата отображения (15,7 % станет 0.157, целые — без «.0»), даты — 2025-12-31, дата со временем — 2025-12-31T14:30:15, время — 14:30:15, длительность — 36:05:00, логические значения — true и false. Знаки &, < и > в тексте экранируются, а переводы строк внутри ячейки остаются как есть.
- Имена элементов — заголовки столбцов по правилам XML, кириллица остаётся
- Исходные заголовки — в блоке columns, если имена пришлось менять
- Пустая ячейка — элемента нет
- Даты — 2025-12-31, время — 14:30:15, длительность — 36:05:00
- Знаки &, < и > экранируются, документ — в UTF-8 без BOM
Формулы, размер XML и файлы, которые конвертер не примет
Формулы конвертер не пересчитывает: в XML попадает значение, которое Excel или LibreOffice сохранили в файле вместе с формулой, — сумма становится числом, дата — датой вида 2025-12-31, ошибка — её текстом, например #DIV/0!. Если книгу собрала другая программа и не записала в неё значения формул, у таких ячеек элемента не будет, а под кнопкой скачивания появится предупреждение с их числом: откройте книгу в Excel, сохраните её и загрузите снова. Коды, набранные в Excel текстом, — 00123, ИНН, штрихкоды — переходят как есть, вместе с ведущими нулями, а число длиннее 15 цифр Excel хранит неточно, и в XML оно попадёт таким же.
Книга принимается до 50 МБ и до 1 100 000 заполненных ячеек на выбранных листах; пустые ячейки и пропуски внутри строки в этот счёт не входят. Если ячеек больше, конвертер, как правило, ещё до чтения таблицы предложит разделить её на части — по листам, годам или строкам. XML той же таблицы весит больше, чем JSON: в наших замерах миллион заполненных ячеек дал от 34,3 до 149,5 МБ XML — в зависимости от ширины таблицы, длины заголовков и самих значений, — а широкая таблица, которая в JSON заняла 97,8 МБ, в XML весила 149,5 МБ. Готовый XML может весить до 180 МБ, а на одну конвертацию отводится до 60 секунд: книга на миллион ячеек в наших тестовых замерах обрабатывалась 12–14 секунд, а когда сервер загружен, ждать приходится дольше.
Вид файла конвертер определяет по содержимому, а читает только книги XLSX и XLSM. Книгу старого формата .xls он вернёт даже под именем .xlsx с советом сохранить её как XLSX — это умеет «Конвертер XLS в XLSX»; таблицу ODS из LibreOffice сначала сохраните книгой Excel. Если под расширением .xlsx лежит текст или CSV, книга с паролем на открытие или в книге нет ни одной строки под заголовком, конвертер назовёт причину и подскажет, что сделать. И учтите главное: он записывает собственную простую структуру — записи и поля с именами столбцов, — а не XML по схеме конкретной программы или формы отчётности. Если программа ждёт файл строго своего формата, этот XML придётся под него преобразовать.
- Формулы — сохранёнными значениями, без пересчёта
- До 50 МБ и 1 100 000 заполненных ячеек, готовый XML — до 180 МБ
- Старый .xls — сначала в XLSX, таблицу ODS — сохранить книгой Excel
- Своя простая структура, а не XML по схеме конкретной программы
Типичная задача: таблицу из Excel нужно передать программе в XML
Данные ведут в книге Excel, а программа или скрипт, куда их нужно загрузить, читает XML. В заголовках таблицы есть пробелы и скобки, коды набраны текстом с ведущими нулями, а часть ячеек пустая.
Открыть toolfox.ru/tools/excel-to-xml и перетащить книгу на страницу
Оставить вариант «Первый лист» и нажать «Конвертировать в XML»
Проверить под кнопкой, какой лист взят и сколько получилось записей
Скачать XML и сверить имена элементов с блоком columns в начале файла
Получается документ, где каждая строка таблицы — элемент row, а поля названы по заголовкам: пробелы и скобки заменены на «_», исходные названия собраны в блоке columns. Коды остаются с ведущими нулями, числа записаны без формата, а у пустых ячеек элементов нет.
Знаете ли вы?
XML 1.0 — рекомендация консорциума W3C: первое издание вышло в 1998 году, действующее пятое — в 2008-м. По ней же, например, устроены форматы XLSX и DOCX: внутри архива лежат файлы XML.
Имя элемента XML может состоять из букв любого алфавита, поэтому элемент Цена — правильный. А начинаться с цифры имя не может, и имена, которые начинаются с букв xml в любом регистре, стандарт оставляет за собой.
Знаки < и & в обычном тексте XML нельзя писать как есть: первый открывает тег, второй — ссылку на сущность. Поэтому в документе их записывают заменами, а программа, читающая файл, возвращает их обратно.
XML строже HTML: если в документе нарушено правило вроде незакрытого элемента, программа-разборщик по стандарту должна прекратить обычную обработку, а не угадывать, что имелось в виду.
Одна строка заголовков — понятные имена элементов
Конвертер считает заголовком первую заполненную строку листа и шапку из объединённых ячеек не распознаёт: именами элементов станут подписи её первой строки, а остальные строки шапки превратятся в записи. Перед конвертацией оставьте над таблицей одну строку с короткими названиями столбцов без пробелов и знаков — тогда имена элементов совпадут с заголовками, и блок columns не понадобится.
Как сделать XML из таблицы Excel — пошаговая инструкция
Загрузите книгу .xlsx или .xlsm
Перетащите файл на страницу или нажмите на область загрузки и выберите его на компьютере. Подходит книга Excel размером до 50 МБ, в том числе с макросами, и книга, сохранённая в LibreOffice в формате XLSX.
Выберите, какие листы взять
«Первый лист» — элемент rows с записями первого видимого листа, где есть данные. «Все листы» — элемент workbook, в котором у каждого листа с данными, включая скрытые, свой элемент sheet.
Нажмите «Конвертировать в XML»
Небольшая книга обрабатывается за доли секунды, книга на миллион заполненных ячеек в наших тестовых замерах — за 12–14 секунд. На одну конвертацию отводится до 60 секунд.
Проверьте заметки и скачайте XML
Под кнопкой написано, сколько записей получилось, какой лист взят и сколько листов в книге, а если были формулы без сохранённых значений — сколько их. Нажмите «Скачать XML»: имя файла совпадает с именем книги.
Примеры: какой XML получается из разных таблиц
Каталог товаров для программы
Лист с артикулами, названиями, ценами и остатками. В XML каждая позиция — элемент row с полями Артикул, Название, Цена; цены и остатки записаны числами, артикулы, набранные текстом, — с ведущими нулями, а у пустых ячеек элементов нет.
Заголовки с пробелами и знаками
Столбцы «Кол-во, шт.» и «Цена (руб.)» становятся элементами Кол-во_шт. и Цена_руб., а исходные названия сохраняются в блоке columns в начале таблицы — по нему видно, из какого столбца взято каждое поле.
Справочник из нескольких листов
Книга, где на каждом листе свой справочник: регионы, склады, менеджеры. С вариантом «Все листы» получается один документ workbook, в котором у каждого листа свой элемент sheet с именем листа в атрибуте name.
Таблица с датами и логическими значениями
Таблица с датами, временем, логическими значениями ИСТИНА/ЛОЖЬ и суммами. Даты и время в XML записаны вида 2025-12-31T14:30:15, логические значения — true и false, суммы — числами без знака валюты.
Часто задаваемые вопросы про конвертер Excel в XML
Как перевести таблицу Excel в XML онлайн бесплатно?
Как устроен XML, который получается из таблицы?
Почему имена элементов не совпадают с заголовками столбцов?
Что станет с пустыми ячейками, датами и числами?
Можно ли перевести в XML все листы книги сразу?
Подойдёт ли этот XML программе, которая ждёт файл своего формата?
Почему у некоторых ячеек с формулами в XML нет элемента?
Почему конвертер не принимает мой файл?
Полезная информация
🔒 Регистрация не нужна, а загруженный файл удаляется с сервера сразу после обработки, самое позднее — через 20 минут.
🏷️ Имена по правилам XML. Элементы называются по заголовкам столбцов: кириллица остаётся, пробелы и знаки становятся «_», а если имена пришлось менять, исходные заголовки собраны в блоке columns.
🧭 Листы на выбор. «Первый лист» даёт элемент rows с записями, «Все листы» — элемент workbook, где у каждого листа с данными свой элемент sheet.
📏 Пределы. Книга — до 50 МБ и 1 100 000 заполненных ячеек, готовый XML — до 180 МБ, конвертация — до 60 секунд.
Другие конвертеры таблиц
Ту же таблицу можно сохранить в JSON для сайта или скрипта и в CSV для другой программы, а книгу в старом формате .xls — сначала перевести в XLSX. Все эти конвертеры бесплатны и работают в браузере без установки программ.
Комментарии
Этот инструмент ещё ждёт первого комментария
Без почты и пароля · публикуем после проверки, обычно за 1–2 дня
Комментарии — мнения посетителей, прошедшие проверку по правилам сайта.