Конвертируем xls в xml

Расскажу вам быстрый способ создания xml-файла из таблицы экселя!

XML документы — это очень сильная и мощная вещь. С помощью одного XML файла можно наполнить сайт информацией за считанные секунды! Ведь во всех современных движках (CMS) присутствует возможность импорта из хмл файла. Так к чему это я.

Файлы формата XML используются не только для наполнения сайтов, каждый может использовать их в своих целях (о них в последующих статьях поведаю). Совсем недавно мне потребовалось экспортировать файл XLS в XML. Сначала я начал искать конверторы для этого, но ненайдя ничего стоящего, попробовал сделать операцию конвертирования с помощью самого экселя. И теперь хочу с вами поделиться этим «тайным» знанием!

Офф-топ, о том, как из djvu сделать pdf, можно прочесть тут.

Как известно, форматы *.xls (*.xlsx в 2007 офисе) — это форматы Microsoft Office Excel. 2003 офис ушел в прошлое, уже есть 2010, но я работаю на 2007, а, следовательно, рассказывать буду, основываясь на нем. Погнали!

1. Заходим на сайт Microsoft, и скачиваем надстройку для работы с XML. Скачать Excel 2003 Add-in: XML Tools Add-in. Весит она не много, 397 KB.



2. Устанавливаем ее к себе на компьютер. Сложного в установке ничего нет. По умолчанию надстройка устанавливается вот сюда: c:\Office Samples\OfficeExcel2003XMLToolsAddin

3. Теперь открываем Excel, заходим в меню и выбираем пункт «Параметры Excel».

4. В появившемся окне, слева, выбираем пункт «Надстройки», а внизу окна, нажимаем на кнопку «Перейти…»

5. Перед вами откроется новое окно, в нем вам необходимо нажать кнопку «Обзор…». Как оно выглядит, показано ниже.

6. Теперь вам необходимо найти установленную надстройку XmlTools (смотреть пункт 2). Выбрать ее и нажать ОК!

7. Если вы все сделали правильно, вы увидите следующее окно! Смело жмем ОК, установка завершена!

8. У вас появилось в верхнем меню вкладка надстройка, а слева пункт XML Tools.

С установкой разобрались, а теперь переходим непосредственно к конвертированию (экспорту) xls в xml.

1. Для этого открываем файл с данными, которые необходимо перегнать. Затем выбираем первый пункт в раскрывающемся меню «Convert a Range to an XML List…»

2. Перед вами откроется небольшое окошко, что вам в нем необходимо? Там есть радио кнопки, No и Yes, для чего они? Все просто, если у вас есть заголовок к данным (в моем случае он есть) выбираем Yes, а если его нет, то соответственно No. Затем нажимаем на маленький прямоугольник в верхней строке.

3. Выделяем область данных, которые конвертируем и нажимаем на кнопку справа в появившемся окне. Возвращается предыдущее окно, в котором жмем ОК.

4. Ваша табличка должна измениться, можно сказать преобразиться, у меня это выглядит вот так:

5. Все готово, осталось только сохранить готовый xml документ. Заходим в меню, выбираем «Сохранить как…», «Другие форматы».

6. В раскрывающемся списке «Тип файла» выбираем XML-данные, нажимаем «Сохранить».

Я вас поздравляю, ваш файл создан!

Надеюсь, все было изложено подробно и понятно, однако если возникнут вопросы, пишите!

Запись опубликована в рубрике Разное с метками , . Добавьте в закладки постоянную ссылку.

106 комментариев: Конвертируем xls в xml

  1. Ирина говорит:

    Уважаемый, MrWildWolf666. Помогите справиться с ошибкой «Compile error
    User — defined type not defined»!

  2. Сергей говорит:

    Первые семь пунктов инструкции установки выполняются, а на восьмом стоп. Никакие вкладки не добавляются. Как исправить?

  3. Михаил говорит:

    Всё отлично!!! Спасибо, отлично все работает.

  4. Егор говорит:

    Добрый день! После нажатия кнопки OK в Convert выдает ошибку Range is too large!!! Посоветуйте как быть?

  5. Оксана говорит:

    Добрый день. все сделала, все получилось. Спасибо. Единственный вопрос, как форму на пяти отдельных екселевских листах можно сконвертировать в один файл. Мне нужно форму 4-фсс перевести в один файл.

    • Наталёк говорит:

      Здравствуйте! Большое СПАСИБО! Пробую на одном листе, небольшую табличку перевести- ВСЁ ОТЛИЧНО ПОЛУЧАЕТСЯ!!! Вопрос в том, что очень нужно одним файлом целый документ перевести в XML (Форма 4-ФCC). Помогите пожалуйста!

  6. Exelka говорит:

    Ошибка «Compile error
    User — defined type not defined»
    Как исправить ошибку????????

  7. Игорь говорит:

    Чётко прошел по всем пунктам и всё замечательно с первого раза получилось. Спасибо.

  8. Дарья говорит:

    У меня получается до момента нажатия ОК. Жму ОК и вот что вижу: «Данные которые вы пытаетесь сопоставить, содержат элементы форматирования, несовместимые с указанным для листа форматом»
    и три варианта действий:
    — использовать существующий формат
    — использовать тип данных элемента
    — отмена
    Если долго жать на второй вариант в конце концов файл переформатируется.
    Но как он будет отображаться — это мы узнаем через несколько дней.
    Не прощаюсь.

  9. муха говорит:

    внимательно нужно читать и все получатся отлично, как показано. Огромная благодарность.

  10. Алексей говорит:

    Ошибка «Compile error
    User — defined type not defined»

  11. Роман говорит:

    Ошибка «Compile error
    User — defined type not defined»
    Как боротся?

  12. Мари говорит:

    И у меня такая ошибка! Как быть????? Мне очень нужен такой конвертер

    все делаю по инструкции, но после нажатия «ок» появляется окно Visual Basic и в ошибке написано
    «Compile error
    User — defined type not defined»
    и соотв. не конвертирует.
    что это значит и как с этим бороться?

  13. Galina говорит:

    Тоже пишет выделить диапазон, галочку убрала, а что значит перезагрузить ехел?????>прошу срочнооо

  14. Анастасия говорит:

    Всем привет, мне нужно экселевскую табличку длинной в 5000 сток переписать в xml. Тулс для этого подойдет?

  15. Оксана говорит:

    Огромное спасибо!!! Даже такой ЧАЙНИК как я смог это сделать!!! Дай Бог здоровья автору!!!!

  16. Елена говорит:

    Большое спасибо! я много месяцев не могла найти данную информацию! от всей души — счастья,здоровья и успехов..в чем вы хотите!!!

  17. Надежда говорит:

    Спасибо!!!
    Все вышло замечательно.
    Побольше бы таких щедрых в жизни было!

  18. Владимир говорит:

    Как выполнить сохранение в .XML на защищенном листе?

  19. Валентина говорит:

    Автору — счастья, здоровья!

  20. Алекс говорит:

    Народ, а как из xml вытаскивать данные?

  21. Анатолий говорит:

    Такая же проблема, при проверки формата выдает:В строке №2 The ‘Root’ element is not declared. Как быть???? Перепробывал все, все упираеться в карты xml. Не могу с ними разобраться. Помогите!!!

  22. юлия говорит:

    пишет что надстройки не совместимы с версией виндовс. может такое быть?

  23. серж говорит:

    Спасибо за подробный расклад. но у меня еще вопрос а можно ли перевести mxl в xml.

  24. Женя говорит:

    Добрый день

    все делаю по инструкции, но после нажатия «ок» появляется окно Visual Basic и в ошибке написано
    «Compile error
    User — defined type not defined»
    и соотв. не конвертирует.
    что это значит и как с этим бороться?

  25. Дмитрий говорит:

    Огромное спасибо. Все получилось.

  26. CP говорит:

    Спасибо за разъяснения. Вопрос? Как преобразовать XML в YML.
    Так же как сделать ссылку в XML на нужный сайт вместо получаемого
    .
    Если в таблице по ходу пропадают данные из одной колонки, просто они не нужны.
    Еще не конвертируется вся таблица (имеются пробелы в строках). Однако часть данных с пропущенными строками преобразуется, а часть нет.

  27. Александр говорит:

    Спасибо всё получилось, как теперь его в бить в С1

  28. Bakro говорит:

    Все чудно, скачал ссылку, скачал специально Exl-2007, все установил, все нормально. Но как только начинаю конвертировать, пишут мне, что не выбран диапазон. Что только не делал, две строки, пять строк и две колонки и т.д. и т.п. выдает одно и тоже: «You must select a rangt» … Подскажите, что может быть не так делаю или сделал.

  29. docimpex говорит:

    Декларация об объемах поставки этилового спирта, алкогольной и спиртосодержащей продукции (Ф-11 и Ф-12). Преобразование из MS Excel в XML.

    Кому это может быть полезно?
    Бухгалтерам, которые работают с организациями, предоставляющими данные деклараций в виде электронных таблиц MS Excel, и пользуются такими сервисами, как алкодекларация.Контур. Теперь Вам не надо будет вручную составлять декларации, достаточно будет загрузить файл электронных таблиц на нашем сайте, выставить необходимые настройки, и вы получите готовый XML-документ. Посмотрите обучающее видео , которое поможет Вам разобраться, как конвертировать декларации.

  30. Елена говорит:

    Привет всем! У меня вопрос, может быть, кто подскажет))) Сдаю декларацию по винно-водке, честно говоря, устала вручную набивать все. Преобразовала с помощью mrwildwolf666 xls в xlm, но все равно программа не считывает данные, работаю в СКБ Контур, выше прочитала, что Ольга справилась с проблемой, но как, что то ничего не получается?

  31. Чайник говорит:

    Всем привет! Вещаю от имени всех чайников РФ !!! Всё сделал по инструкции и «О чудо» всё работает!!! Спасибо за подробную инструкцию.

  32. Егор говорит:

    Всем Добрый День у меня вопрос когда я указываю диапазон и нажимаю ок, у меня таблица изменяется, но тут же выходит окно : Данные которые вы пытаетесь сопоставить, содержат элементы форматирования, несовместимые с указанным для листа форматом и 3 варианта 1. Использовать существующий формат 2. Использовать тип данных элемента 3. отмена.
    испробовал все но хрень получается и когда сохраняю на сайте не распознают как декларацию мол не тот формат

    • Екатерина говорит:

      Такая же проблема, при проверки формата выдает:В строке №2 The ‘Root’ element is not declared. Как быть????

      • Сергей говорит:

        Скорее всего данные которые вы пытаетесь перегнат md xml уже отформатированы\существуют в виду списка. Создайте новую страницу, вставьте по значению, и делайте все операции уже там.

        • Алексей говорит:

          Приветствую,столкнулся с той же проблемой что выше,не понял тока что значит «Создайте новую страницу, вставьте по значению»

          • Дарья говорит:

            Да уж было бы неплохо разобраться в «Создайте новую страницу, вставьте по значению». Что это значит и как это вставить??

  33. nata говорит:

    все сделано как написано. но после выбора диапазона,и нажатии на кнопку ok, пишет что диапазон не выбран(((

  34. Анатолий говорит:

    Сделал для теста таблицу на подобие как у Вас.
    Сохранил и при открытие хмл вот что:

    —132509-233199-316802

    Тут нету ни нзваний ничего.. как быть?

  35. andre532 говорит:

    Налоговая затребовала данные в xml-файлах.
    У меня Excel 2010. Установил OfficeExcel2003XMLToolsAddin, как требует MS.
    Но при активном статусе настройки «xmltools» так и не появилась нигде требуемая кнопка «Преобразовать диапазон в список XML» …. Где ее искать или что делать?

  36. Алла говорит:

    Огромное спасибо!!!

  37. oksana говорит:

    При подгрузке в программу M.E.DOC пишет неверный код ОКПО предприятия! Почему?

  38. Андрей говорит:

    Спасибо большое за отличную инструкцию! Сначала тоже не получалось выгрузить, требовал ввести диапозон. Надо просто чтобы были названия столбцов буквами! И все полетело. Теперь мне стало проще работать с выгрузкой металлических дверей на площадку интернет магазина. Ура, еще от одной затраты избавился))

  39. алексей говорит:

    Как быть если данные в xml должны быть вложенные — иерархическая структура

  40. Ольга говорит:

    Добрый день. у меня просьба-подскажите пожалуйста как преобразовать Xls в xml для алкогольной декларации и сколько это стоит?

  41. Rendom говорит:

    не получается сохранить готовую таблицу в xml файл Пишет:
    «Невозможно сохранить xml-данные. Карты в этой книге не предназначены для экспорта»
    И что сие значит и что сделать чтобы было ок ?

  42. Nesti_31 говорит:

    Подскажите, пожалуйста,а можно ли таким образом не один лист, а книгу Exel конвертировать в xml ?

  43. Евгений говорит:

    Нельзя ведь использовать в одной таблице формат даты и общий формат, как у вас показано в п.4, или я что-то не понимаю?

  44. Карина говорит:

    Спасибо Вам большое!

  45. юля говорит:

    подскажите, я вообще чайник, у меня ехеl на компе стоит. Если я воспользуюсь этой поднастройкой, что может случится с моей старенькой программой??? Не произойдет ли наложения???

  46. Наталья говорит:

    Добрый день, подскажите пожалуйста как преобразовать Xls в xml для алкогольной декларации, все скачала, требует карту

  47. Анастасия говорит:

    Добрый день!
    К сожалению, это не выполняется на 64-разрядной операционной системе. Можно ли это как-то исправить? Очень нужно перевести xls в xml.

  48. Фаррух говорит:

    MrWildWolf666, здравствуйте )))))Простите, а Вы случайно не подскажете, а можно ли такую же процедуру сделать в OpenOffice Calc? Просто у меня Excel не работает из-за истечения срока действия пробной версии, а надо сделать срочно файл XML.

  49. Юлия говорит:

    MrWildWolf666, спасибо большое за инструкцию!!!все понятно, все сделала, но когда открываю файл xml в гранде, пишет неверный формат данных в файле, что с этим делать?что пошло не так?

  50. Наталья Юрьевна говорит:

    Низкий поклон!
    Все получается…
    Какая ж у Вас умная головушка!
    Спасибо за такой легкий и нужный для бухгалтеров (которые сидят в лесу , а вокруг болото и нет програмистов) преобразователь. Теперь мой эл. документооборот работает с эцп.
    Еще раз спасибо!

  51. Любовь говорит:

    Спасибо большое!

  52. Андрей говорит:

    Добрый день! Подскажите, пожалуйста, а как быть, если нужно сделать xml файл из файл excel, который содержит несколько страниц, если быть точным — 20. По одной странице, все ясно..а как объединить их все в одной и сконвертировать в xml?

  53. Наталья говорит:

    Уважаемы, MrWildWolf666. У Вас такая замечательная понятная и простая инструкция! Я начинающий пользователь, но у меня все получилось. Установка прошла успешно. И дальше все понятно, вот только с выделением области данных проблема. Выдается сообщение: «Вы должны выбрать диапазон». Хотя все выделено. Попробовала на другом тексте, получилось. А на том, который мне нужен не получается. Помогите, пожалуйста! Спасибо заранее. Наталья.

  54. ruslan говорит:

    После выбора диапазона выходит ошибка range is too large, даже после выделения всего нескольких строк

  55. sbiver говорит:

    А вот с Excel 2010 это не «катит»!

    • MrWildWolf666 говорит:

      Вероятно, нужна новая версия надстройки! Если разберетесь, как конвертировать в 2010 экселе, напишите здесь. А если нужна будет моя помощь, пишите, будем разбираться!

    • кирилл говорит:

      На 2010 все работает, возникают лёгкие проблемы с компеляцией, но их легко решить большим значением индекса.
      Большое спасибо автору

  56. СК говорит:

    Всё равно не получается,хоть убейся, с любым файлом » YOU must seleсt a range» , а область явно выделена. Может, в моём EXCElе чего-то не хватает? ((

    • MrWildWolf666 говорит:

      Значит у вас что-то не так с экселем. Данная методика проверялась не раз, сбоев никогда не было.

      • СК говорит:

        Получилось. Оказывается, названия столбцов обязательно должны быть буквами. Спасибо!!!!!

        • MrWildWolf666 говорит:

          Они по умолчанию буквенные, поэтому этот момент не проверялся. Спасибо за дополнение.

        • Наталья говорит:

          А как вы сделали столбцы буквами? Такая же проблема, никак не могу сделать….

          • Владимир говорит:

            Наталья, Вы уже разобрались как переделать названия столбцов в буквы? Если да, то подскажите. Спасибо!

          • Анастасия говорит:

            Преобразование названия столбцов в буквы (Exсel 2010):
            Файл\Параметры\Формулы\
            В разделе «Работа с формулами» убираем галочку «Стиль ссылок R1 C1». Жмем кнопку ОК. Перезагружаем exсel.

        • Рустам говорит:

          Спасибо вам огромное, столкнулся с такой же проблемой, но ваше решение помогло. 1С просто видимо сохраняет файл с форматом 1R1С.

          • nata говорит:

            а в Exсel 2007 как сделать?проблема аналогичная((

          • Семен говорит:

            Спасибо! Помогло) а то уже невничать жутко начал

  57. СК говорит:

    MrWildWolf666, прошу Вашей помощи: после выделения области при нажатии ОК (после п.3) , выдаёт сообщение «вы должны выделить дипазон», хотя он был выделен. Как быть?

  58. none говорит:

    mrwildwolf666, прошу прощения, что пишу здесь, иначе мой вопрос ты скорее всего не увидишь.
    Подскажи, пожалуйста, как сделать так, чтобы спойлер разворачивался при нажатии по нему в любом месте?
    http://mrwildwolf666.name/veb-razrabotka/spojler-dlya-sajta/

    div.spoiler div.name {
    cursor: pointer;
    background-color: #f2f2f2;
    border: 1px dotted #bebebe;
    width:563px;
    }

Добавить комментарий