Xml from excel 2003

Содержание

  1. Excel в xml
  2. Конвертация форматов Microsoft Excel в XML
  3. Процедура конвертации
  4. Способ 1: простое сохранение
  5. Способ 2: инструменты разработчика
  6. Экспорт данных XML
  7. Экспорт данных XML (с не более 65 536 строк)
  8. Экспорт данных XML (для более 65 536 строк)
  9. Сохранение данных XML в сопоставленных ячейках в файле данных XML
  10. Распространенные проблемы при экспорте данных XML
  11. Эту карту XML можно экспортировать, но некоторые необходимые элементы не сопоставлены
  12. Невозможно экспортировать карты XML в книге
  13. Excel не может сохранить книгу, так как в ней нет сопоставленных диапазонов
  14. Создание файла XML-данных и файла схемы XML из данных листа
  15. Действие 1. Загрузка надстройки «Средства XML» и ее активация
  16. Этап 2. Преобразование диапазона ячеек в таблицу XML
  17. Действие 3. Экспорт XML-таблицы в файл XML-данных (XML)
  18. Этап 4. Сохранение схемы XML в файле схемы XML (XSD)
  19. Excel как конвертер XML в XLS, онлайн-сервис как альтернатива
  20. Способ 1: с помощью программы Excel
  21. Способ 2: опция «Импорт данных» в Excel
  22. Способ 3: с помощью интернет-сервиса
  23. Собрать данные из XML файлов в Excel и экспортировать
  24. Как создать XML-файл из Excel
  25. Как сохранить файл Excel в формате XML
  26. Как открыть XML файл в Excel
  27. Как преобразовать файл XML в Excel
  28. Как собрать данные из XML файлов в Excel

Excel в xml

Конвертация форматов Microsoft Excel в XML

​Смотрите также​ 2003 либо веб-страницы.​XML – стандарт файла​ Excel. Теперь его​ сказать, что Excel​ на количество строк,​Если после нажатия клавиши​ называемые обычные данные).​ 2003 и следуйте​Приложение Excel не может​ не удастся.​.​Примечание:​ внесения изменений в​ и кликаем по​ инструментов разработчика теперь​ переходим во вкладку​XML – это универсальный​ С этими форматами​ для передачи данных​

​ можно сохранить как​ – это конвертер​

Процедура конвертации

​ которые можно экспортировать.​ F5 сообщения об​На вкладке​ указаниям на странице​ сохранить книгу в​XML-таблица содержит смешанное содержимое.​Если появится сообщение о​ Если лист содержит заголовки​ данные часто бывает​ кнопке​ включена.​«Файл»​ формат работы с​ проблем, как правило,​ в Сети. Excel​ XLS. Для этого​ XML в XLS.​ При экспорте в​ ошибке VBA больше​

Способ 1: простое сохранение

​Надстройки​ загрузки.​ файле данных XML,​Смешанное содержимое возникает, когда​​ том, что сохранение​​ или метки, отличающиеся​ нужно экспортировать или​«Открыть»​Далее открываем таблицу Excel​.​ данными. Его поддерживает​ не возникает.​ поддерживает его экспорт​ по аналогии с​

    ​ Рассмотрим, как все​ XML-файл из Excel​ не отображается, закройте​в группе​​Запустите Excel.​​ пока вы не​ элемент содержит дочерний​​ файла в виде​​ от имен XML-элементов​

​ сохранить данные в​.​ в программе любым​После этого переходим по​ множество программ, в​Еще варианты:​ и импорт.​ предыдущей инструкцией откройте​ же преобразить формат​ можно сохранить до​​ редактор Visual Basic,​​Команды меню​На вкладке​

​ создадите один или​ элемент и простой​ данных XML может​ на карте XML,​ виде XML-файла.​​После того, как элементы​​ удобным способом.​

​ пункту​ том числе из​​Скачать конвертер XLC в​​Рассмотрим создание XML-файла на​

​ вкладку «Файл», кликните​ с его помощью:​ 65 536 строк. Если​ чтобы вернуться в​щелкните стрелку возле​Файл​ несколько сопоставленных диапазонов.​ текст за пределами​ привести к потере​ то при экспорте​Важно:​ схемы появились в​На её основе нам​«Сохранить как…»​ сферы СУБД. Поэтому​​ XML. Либо найти​​ примере производственного календаря.​ по «Сохранить как»,​

​Откройте Excel.​ файл содержит более​​ книгу. Диапазон ячеек​​ надписи​​выберите команду​​Если вы добавили в​ дочернего элемента. Это​

  • ​ функциональности, нажмите кнопку​ или сохранении данных​​ ​​ окне, перетаскиваем их​
  • ​ предстоит создать схему,​.​ конвертация информации в​ сервис, с помощью​

    Способ 2: инструменты разработчика

    ​Сделаем таблицу, по которой​ укажите директорию, выберите​На панели нажмите «Файл».​ 65 536 строк, Excel​ будет преобразован в​Средства​Параметры​ книгу карту XML,​ часто бывает в​Продолжить​ XML приложение Excel​Прежде чем экспорт данных​ с помощью курсора​ которая формируется в​Открывается окно сохранения. Переходим​ XML важна именно​ которого можно экспортировать​ нужно создать XML​ формат и сохраните.​

      ​Кликните по опции «Открыть».​ сможет экспортировать только​ XML-таблицу.​, а затем​, а затем — пункт​​ для сопоставления XML-элементов​​ случае, когда теги​.​​ использует имена XML-элементов.​​ XML, необходимо включить​

    ​ в соответствующие ячейки​ любом текстовом редакторе.​​ в ту директорию,​​ с точки зрения​ файл онлайн.​ файл в Excel​​Может случиться так, что​​В появившемся окне «Проводника»​ первые строки (число​​Примечание:​​ нажмите кнопку​Надстройки​ на листе сделайте​ форматирования (например, теги​

    ​Если откроется небольшое диалоговое​Найдите разность общего количества​ на вкладке «​

    ​ наименования столбцов таблицы.​ Для этих целей​ в которой желаем,​ взаимодействия и обмена​Скачать с официального сайта​ и заполним ее​ вам понадобится конвертер​ перейдите в директорию​ строк mod 65 537).​ Чтобы отобразить все карты​Преобразовать диапазон в список​.​ следующее.​ полужирного начертания) используются​ окно​ строк в файле​Разработчик​Кликаем правой кнопкой мыши​

    ​ можно использовать и​ чтобы хранился конвертированный​ данными между различными​ Microsoft надстройку XML​​ данными.​​ XLS в XML​ с XML-файлом и​ Например, если лист​​ XML в книге,​​ XML​В Excel 2007 нажмите​На вкладке​ для пометки данных​Экспорт XML​ и числа 65 537.​» на ленте.​ по полученной таблице.​ обычный Блокнот Windows,​ файл. Впрочем, можно​ приложениями. Excel как​ Tools Add-in. Она​Создадим и вставим карту​ для НДС, например.​ откройте его.​ содержит 70 000 строк,​ на вкладке​.​кнопку Microsoft Office​Разработчик​ внутри элемента. Дочерний​, щелкните карту XML,​ Обозначим это число​​ Просмотреть вкладку «Разработчик».​​ В контекстном меню​

    ​ но лучше применять​ оставить и директорию​ раз входит в​ в бесплатном доступе.​​ XML с необходимой​​ В этом случае​Документ открыт, и вы​​ Excel экспортирует 4464 строки​​Разработчик​​Введите диапазон ячеек с​​и выберите пункты​выберите команду​ элемент может отображаться​ которую вы хотите​​ как x.​​При создании карт XML​

    ​ последовательно переходим по​ специализированное приложение для​​ по умолчанию, то​​ число программ, которые​

    ​Открываем новую книгу. Кнопка​ структурой документа.​ Excel не поможет,​ можете его прочитать.​ (70 000 mod 65 537).​в группе​​ данными, которые необходимо​​Параметры Excel​

    ​Источник​ (если он поддерживается​ использовать, и нажмите​Удалите x строк с​ и экспорте данных​ пунктам​

  • ​ программирования и работы​ есть ту, что​ работают с таблицами,​ Office – «Открыть».​Экспортируем данные таблицы в​​ и потребуется обратиться​​ Чтобы его преобразовать​​ Мы рекомендуем последовать​​XML​ преобразовать, как абсолютную​ >​
  • ​.​ в Excel), но​ кнопку​ начала листа Excel.​ Excel в XML-файлы​«XML»​ с языками разметки​ предложила сама программа.​ и даже может​Меняем формат на «файлы​ XML формат.​​ к другой программе.​​ в XLS-файл, вам​ одному из следующих​нажмите кнопку​ ссылку в текстовом​Надстройки​Если вкладка​ текстовое содержимое теряется​ОК​Экспортируйте лист в виде​ существует ограничение на​и​ Notepad++. Запускаем эту​ В этом же​ выполнять манипуляции с​ XML». Выбираем нужный​Итак.​ В данном случае​ необходимо сделать следующее:​ советов: 1) используйте​Источник​ поле.​.​Разработчик​

    ​ при импорте данных​

    Экспорт данных XML

    ​.​​ файла данных XML​ количество строк, которые​«Экспорт…»​ программу. В ней​ окне, если возникнет​ базами данных. Разберемся,​ файл. Жмем «Открыть».​Наша таблица – производственный​ поговорим об онлайн-сервисе​Снова откройте вкладку «Файл».​ формат XLSX; 2)​для отображения области​Совет:​В поле​не отображается, см.​ и недоступно при​Это диалоговое окно отображается​ (смотрите в предыдущем​ можно экспортировать. При​. После этого сохраняем​

    ​ создаем схему. На​ желание, можно изменить​ как конвертировать файлы​Способ открытия – XML-таблица.​ календарь.​ Convertio:​Выберите опцию «Сохранить как».​ сохраните файл в​

    ​ задач «Источник XML».​​ Чтобы облегчить ввод правильной​

    ​Управление​ раздел Отображение вкладки​ экспорте, т. е не​​ только в том​​ разделе процедуры).​ экспорте в XML-файл​

    ​ файл в любой​ нашем примере она​ наименование файла. Но​ Эксель в XML.​ ОК.​Создаем в любом текстовом​В любом браузере перейдите​Перейдите в директорию, в​ формате «Таблица XML​ В нижней части​ ссылки на ячейки,​выберите​ «Разработчик».​ используется ни при​ случае, если не​Нажмите кнопку​ из Excel можно​ директории.​ будет выглядеть, как​ основное внимание нужно​Скачать последнюю версию​Появляется оповещение типа​ редакторе (например, «Блокнот»)​ на главную страницу​ которую нужно поместить​ 2003 (*.xml)» (при​ области задач «Источник​ в диалоговом окне​Надстройки Excel​В области задач​ прямой, ни при​ выбрана XML-таблица и​Закрыть​ сохранить до 65 536​

    Экспорт данных XML (с не более 65 536 строк)

    ​Как видим, существуют два​​ показано внизу на​​ обратить на поле​​ Excel​​Жмем ОК. С полученной​

    ​ желаемую карту XML​​ данного сервиса.​​ измененный документ.​ этом будут потеряны​ XML» нажмите кнопку​

    ​ нажмите кнопку справа​, а затем нажмите​​Источник XML​​ обратной операции.​ книга содержит несколько​, но​ строк. Если файл​​ основных способа конвертации​​ скриншоте окна Notepad++.​

    ​«Тип файла»​Конвертация данных в формат​ таблицей можно работать,​ структуры для генерации​Выберите способ загрузки файла.​В выпадающем списке «Тип​

    ​ сопоставления); 3) удалите​​Карты XML​​ от текстового поля,​​ кнопку​​выберите элементы, которые​Карту XML не удастся​

    ​ карт XML.​​не сохранить​​ содержит более 65 536​

    ​ файлов XLS и​​Как видим, открывающим и​. Раскрываем перечень кликом​ XML не такой​ как с любым​ файла сохраним. В​ Если он расположен​ файла» определите пункт​ все строки после​

    Экспорт данных XML (для более 65 536 строк)

    ​.​ щелкните левую верхнюю​Найти​ вы хотите сопоставить​ экспортировать, если невозможно​

    ​В большом диалоговом окне​лист. Снова откройте​

    ​ строк, Excel сможет​ XLSX в формат​ закрывающим тегом для​ по данному полю.​

    ​ уж простой процесс,​​ файлом Excel.​​ данном примере буде​​ у вас на​​ «Книга Excel».​ 65 536 и затем​

    ​Если вкладка​ ячейку диапазона и,​.​ с листом.​ сохранить отношения сопоставленного​Экспорт XML​

    ​ лист Excel.​ экспортировать только число​ XML программой Microsoft​ документа в целом​Среди вариантов сохранения ищем​ так как в​

    Сохранение данных XML в сопоставленных ячейках в файле данных XML

    ​Меню «Разработчик» — вкладка​ использовать следующую карту​ диске, нажмите кнопку​Сохраните файл, нажав соответствующую​ снова выполните экспорт​Разработчик​ удерживая кнопку мыши,​В диалоговом окне​​Чтобы выделить несмежные элементы,​​ элемента с другими​

    ​введите в поле​Удалите все, кроме первых​

    ​ строк, определяемое формулой​ Excel. Первый из​ служит​ наименование​ его ходе должна​ «Импорт».​ структуры:​

    ​ «С компьютера» и​​ кнопку.​​ (при этом сопоставления​​не видна, выполните​​ переместите курсор на​Надстройки​

    ​ щелкните один из​​ элементами. Отношение может​ ​Имя файла​ x строк, а​​ ЧСТРОК ОСТАТ 65537.​​ них предельно простой​​«data-set»​​«Таблица XML 2003»​

    ​ быть создана специальная​​В диалоговом окне выбираем​​Открываем инструмент «Разработчик». Диалоговое​ выберите его в​

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

    ​имя для файла​ затем экспортируйте в​ Например, если лист​ и заключается в​. В этой же​или​​ схема (schema.xml). Впрочем,​​ файл XML, который​

    ​ окно «Источник» на​ файловом менеджере. Если​​ файл, который изначально​​ потеряны строки в​ указанных в следующем​В поле​Обзор​​ удерживая нажатой клавишу​​ следующим причинам.​

    ​ данных XML.​ виде файла данных​ содержит 70 000 строк,​ элементарной процедуре сохранения​ роли для каждой​«XML-данные»​

    ​ для преобразования информации​​ хотим преобразовать.​​ вкладке XML.​​ в «облаке», то​​ имел расширение XML,​ конце файла).​

    ​ разделе, чтобы добавить​​Первая строка содержит имена​​, найдите файл​

    ​ CTRL, поочередно щелкните​​Определение схемы сопоставленного элемента​Нажмите кнопку​ XML (смотрите в​ Excel экспортирует 4464 строки​ с заданным расширением​ строки выступает тег​. Выбираем один из​ в простейший файл​

    Распространенные проблемы при экспорте данных XML

    ​Нажимаем «Импорт». Программа Excel​Если программа Excel не​ выберите само хранилище,​

    Эту карту XML можно экспортировать, но некоторые необходимые элементы не сопоставлены

    ​ превратится в книгу​Выберите любую ячейку в​

    ​ ее на ленту​ столбцов​XmlTools.xla​ остальные.​ содержится в последовательности​Экспорт​

    ​ предыдущем разделе процедуры).​ (70000 ОСТАТ 65537).​ через функцию​«record»​ этих пунктов.​ данного формата достаточно​ предложит самостоятельно создать​ видит карт XML,​ а затем файл.​ Excel, то есть​ связанной таблице Excel.​ Excel.​

    ​выберите​, выберите его и​

    ​Перетащите выделенные элементы в​ со следующими атрибутами:​.​Эта процедура позволит оставшейся​ Рекомендуем сделать следующее:​«Сохранить как…»​. Для схемы вполне​После этого жмем на​ иметь под рукой​ схему на основе​ их нужно добавить.​Документ добавлен и готов​ будет иметь расширение​На вкладке​Если вкладка​

    ​ нажмите кнопку​ то место листа,​атрибут​Примечание:​ части строки. На​ 1) использовать формат​. Простота и понятность​ будет достаточно, если​ кнопку​ обычные инструменты сохранения​ полученных данных. Соглашаемся​ Жмем «карты XML».​ к конвертации. Для​ XLS.​Надстройки​Разработчик​, если первая строка​ОК​ где они должны​maxoccurs​ Если лист содержит заголовки​

    Невозможно экспортировать карты XML в книге

    ​ данный момент имеется​ XLSX; 2) сохранить​ данного варианта, несомненно,​ мы возьмем всего​«Сохранить»​ в Excel, а​ – ОК. Откроется​

    ​ И указываем путь​ это из выпадающего​Excel – конвертер XML​

    ​в группе​​недоступна, отобразите ее.​​ содержит данные, или​

    ​.​ отображаться.​не равен 1;​ или метки, отличающиеся​ два файлы Экспорт​ файл в формате​

    ​ являются преимуществами. Но​ две строки таблицы,​.​ вот для создания​ окно, где нужно​

    ​ к нашему файлу​ списка справа нужно​ в XLS с​Команды меню​ Дополнительные сведения см.​

    ​Да​По умолчанию этот файл​Если вы не добавили​последовательность содержит более одного​

    ​ от имен XML-элементов​ XML, объединяющие Создание​ «Таблица XML 2003​ у него есть​ а не будем​

    ​Таким образом, преобразование файла​​ хорошо структурированного элемента​ выбрать место для​ с выше указанной​

    ​ выбрать формат XML.​​ двумя способами выполнения​щелкните стрелку возле​ в статье Отображение​, если первая строка​ хранится в следующей​​ карту XML в​​ прямого дочернего элемента​ на карте XML,​ дубликата исходного листа.​ (*.xml)» (при этом​ один очень серьезный​ переводить её всю​

    ​ из формата Excel​​ придется основательно повозиться​ импортируемого файла.​

    Excel не может сохранить книгу, так как в ней нет сопоставленных диапазонов

    ​ схемой карты созданной​Нажмите кнопку «Преобразовать».​ этой задачи. Поэтому​ элемента​ вкладки «Разработчик».​ содержит заголовки столбцов,​

    ​ папке на жестком​ книгу или данные​ или включает в​ то при экспорте​Если нужно обеспечить обратную​

    ​ будут потеряны сопоставления);​​ недостаток. Преобразование выполняется​​ вручную в XML.​​ в XML будет​​ с составлением схемы​

    ​Назначаем диапазон для импорта.​​ в текстовом редакторе.​​После этого файл будет​ перейдем непосредственно ко​Средства XML​

    ​На вкладке​​ и нажмите кнопку​​ диске:​ не находятся в​ себя другой составной​

    ​ или сохранении данных​ совместимость с более​ 3) удалить все​ без учета определенных​ Название открывающего и​ совершено.​

    ​ и её подключением​ Лучше брать с​Добавить ОК.​ подготовлен, и вам​

    ​ второму варианту, который​и нажмите кнопку​Разработчик​ОК​Office SamplesOfficeExcel2003XMLToolsAddin.​ XML-таблице, сохраните книгу​ объект в качестве​ XML приложение Excel​

    Создание файла XML-данных и файла схемы XML из данных листа

    ​ ранними версиями функциональности​​ строки после 65 536​ стандартов, и поэтому​ закрывающего тега столбца​Конвертировать формат Excel в​ к документу.​ «запасом». Жмем ОК.​В правой колонке появляются​ останется его только​ подразумевает использование опции​Создать файлы XSD из​в группе​.​Убедитесь, что флажок​ в формате книги​ такого элемента.​ использует имена XML-элементов.​ XML, можно сохранить​ и затем снова​ файл, конвертируемый таким​ может быть произвольным,​ XML можно с​

    ​В Excel можно сохранить​Созданную таблицу редактируем и​ элементы схемы. Их​ скачать. Convertio –​ «Импорт данных». Но​ схемы XML в​XML​Excel автоматически создаст схему​XmlTools​ Excel с поддержкой​Неповторяющиеся элементы одного уровня​При экспорте данных XML​

    Действие 1. Загрузка надстройки «Средства XML» и ее активация

    ​ файл в виде​ выполнить экспорт (при​ способом, сторонними приложениями​ но в данном​ помощью инструментов разработчика​ данные в формате​

    ​ сохраняем уже в​

    ​ нужно перетащить на​​ это не только​​ перед началом надо​​ активной ячейке​​нажмите кнопку​​ XML, выполнит привязку​​в списке​

    ​ макросов (XLSM).​​ с одним и​ ​ могут появляться сообщения,​​ файла данных XML,​​ этом сопоставления сохранятся,​​ может просто не​​ случае для удобства​

    ​ на вкладке программы.​​ XML, просто воспользовавшись​​ формате Excel.​​ соответствующие названия столбцов​​ конвертер XLS в​ включить меню «Разработчик»,​​.​​Экспорт​

    ​ ячеек к схеме​​Доступные надстройки​​Примечание:​​ тем же повторяющимся​​ подобные приведенным ниже.​​ а не использовать​​ но будут потеряны​ распознаваться. Второй вариант​​ мы предпочли просто​​ При этом, если​

    ​ меню​Принцип сбора информации из​ таблицы.​ XML-файлы. Он способен​
    ​ так как именно​

    ​Приложение Excel скопирует схему​​.​​ и создаст таблицу​​установлен, и нажмите​​Мы стараемся как​ родительским элементом сопоставлены​​Такое сообщение может появиться​​ команду​

    ​ строки в конце​ предполагает составление карты​ перевести русскоязычные наименования​​ пользователь все выполнит​​«Сохранить как…»​​ нескольких XML-файлов такой​​Проверяем возможен ли экспорт.​​ работать с куда​​ в нем находится​

    ​ XML и вставит​​Примечание:​ XML.​ кнопку​ можно оперативнее обеспечивать​ с разными XML-таблицами.​ по следующим причинам.​Экспорт​ файла).​

    ​ XML. В отличие​ колонок на английский​ правильно, то на​. Правда, нет гарантии,​ же, как и​Когда все элементы будут​

    Этап 2. Преобразование диапазона ячеек в таблицу XML

    ​ большим количеством форматов.​ нужный инструмент. Далее​ ее в Блокнот.​ Если открывается небольшое диалоговое​Важно:​ОК​ вас актуальными справочными​Несколько повторяющихся элементов сопоставлены​На карте XML, связанной​

    ​.​​На вкладке​​ от первого способа,​​ язык. После того,​​ выходе он получит,​ что потом все​​ принцип преобразования. Когда​​ сопоставлены, щелкаем правой​ Просто загружайте файл,​​ нужно сделать следующее:​В Блокноте выберите в​​ окно​

    ​ Если откроется редактор Visual​, чтобы загрузить надстройку.​ материалами на вашем​ с одной и​ с этой XML-таблицей,​

    ​Нажмите клавиши CTRL+S, чтобы​​Разработчик​ таблица, преобразованная по​ как данные внесены,​ в отличие от​ программы будут корректно​ мы импортируем данные​ кнопкой мыши по​ а потом выбирайте​Откройте программу.​ меню​

    ​Экспорт XML​​ Basic и отобразится​Чтобы убедиться, что надстройка​​ языке. Эта страница​​ той же XML-таблицей,​​ есть один или​ сохранить файл.​​нажмите кнопку​​ данной схеме, будет​ просто сохраняем их​ предыдущего способа, полноценный​​ работать с файлом,​​ в Excel, одновременно​

    ​ любой ячейке в​ формат, в который​Перейдите в меню «Файл».​Файл​, содержащее только кнопки​

    ​ сообщение об ошибке​​ активирована, проверьте, отображается​ переведена автоматически, поэтому​ и повторение не​ несколько необходимых элементов,​Это действие гарантирует, что​Экспорт​

    ​ соответствовать всем стандартам​​ через функционал текстового​​ XML-файл, который корректно​

    ​ который был создан​ передается карта XML.​ таблице – XML​ хотите его преобразить.​Следуйте в раздел «Параметры».​
    ​пункт​​ОК​​ Visual Basic for​
    ​ ли на вкладке​
    ​ ее текст может​​ определено предком.​

    ​ которые с ней​ никакие изменения, внесенные​.​ качества XML. Но,​ редактора в любом​​ будет восприниматься сторонними​​ таким способом. Да​ В эту же​ – экспорт.​

    ​Вот мы и рассмотрели​Откройте меню «Настройка ленты».​Сохранить как​и​

    ​ Applications (VBA), выполните​Надстройки​ содержать неточности и​Дочерние элементы разных родительских​ не сопоставлены.​ в книгу, не​Если вкладка​ к сожалению, не​ месте на жестком​

    ​ приложениями. Но сразу​​ и не во​ схему можно переносить​Сохраняем в XML файл.​​ конверторы XML в​​Поставьте отметку рядом со​​.​​Отмена​​ следующие действия.​​в категории​ грамматические ошибки. Для​ элементов сопоставлены с​В иерархическом списке элементов​ будут потеряны, если​​Разработчик​​ каждый пользователь сможет​

    ​ диске в формате​​ нужно сказать, что​​ всех случаях этот​ и другие данные.​Другие способы получения XML-данных​ XLS и наоборот.​ строкой «Разработчик», которая​Введите имя и тип​

    Действие 3. Экспорт XML-таблицы в файл XML-данных (XML)

    ​, щелкните карту XML,​​Нажмите кнопку​​Команды меню​ нас важно, чтобы​ одной и той​ в области задач​

    ​ она сохранена в​​не отображается, см.​​ быстро разобраться с​​ XML под названием​​ не каждому новичку​​ способ работает.​​Каждый новый файл будет​

    ​ (схемы):​​ Как можно отметить,​ находится в правой​​ файла, например​​ которую необходимо использовать,​​ОК​​меню​​ эта статья была​​ же XML-таблицей.​ «Источник XML» необходимые​ виде файла данных​​ раздел Отображение вкладки​​ нюансами этой процедуры.​«schema»​​ может хватить знаний​​Запускаем программу Excel. Для​ привязываться к имеющейся​Скачать из базы данных,​ для конвертации XML​ области окна.​ProdOrders.xsd​

    ​ и нажмите кнопку​​.​​Средства XML​​ вам полезна. Просим​​Кроме того, невозможно экспортировать​ элементы выделены красной​

    ​ XML.​​ «Разработчик».​​Автор: Максим Тютюшев​

    ​.​​ и умений сразу​ того, чтобы открыть​ карте. Каждому элементу​ специализированного бизнес-приложения. Схемы​ отлично подходит программа​Нажмите ОК.​, и нажмите кнопку​ОК​В выделенную строку в​.​ вас уделить пару​ карту XML, если​ звездочкой. Она находится​Выберите​Если откроется небольшое диалоговое​Примечание:​Опять переходим к программе​ научится конвертировать данные​ элемент, подлежащий конвертации​ в структуре таблицы​ могут предоставляться коммерческими​ Excel. Однако она​Нужная панель инструментов вынесена​Сохранить​. Это небольшое диалоговое​ модуле кода VBA​Примечание:​ секунд и сообщить,​ она содержит одну​ в верхнем правом​файл​ окно​ Мы стараемся как можно​ Excel с уже​ таким способом.​

    Этап 4. Сохранение схемы XML в файле схемы XML (XSD)

    ​ переходим во вкладку​ соответствует элемент в​

    ​ сайтами, службами. Простые​​ не может преобразовать​​ в интерфейс программы,​​.​​ окно​ удалите из строки​​ Эта надстройка была разработана​​ помогла ли она​​ из следующих конструкций​ углу значка, который​>​​Экспорт XML​

    ​ оперативнее обеспечивать вас​ открытой таблицей. Перемещаемся​По умолчанию вкладка инструментов​

    ​«Файл»​ карте. Допускается только​​ варианты находятся в​​ XLS, поэтому для​​ а это означает,​​При работе с блочными​

    ​Экспорт XML​ «50». Другими словами,​​ для Excel 2003.​​ вам, с помощью​​ схемы XML.​​ расположен слева от​

    Excel как конвертер XML в XLS, онлайн-сервис как альтернатива

    ​Сохранить как​, щелкните карту XML,​ актуальными справочными материалами​ во вкладку​ разработчика отключена. Поэтому,​. Далее жмем по​ одна привязка данных.​ открытом доступе.​ этого требуется прибегать​ что мы можем​ данными нередко появляется​отображается только в​ изменение:​

    Способ 1: с помощью программы Excel

    ​ Документация и пользовательский​ кнопок внизу страницы.​Список списков.​ элемента. Чтобы сопоставить​и выберите расположение​ которую вы хотите​ на вашем языке.​«Разработчик»​ прежде всего, нужно​ пункту​Чтобы настроить параметры привязки,​Использовать готовые образцы для​ к помощи других​ приступать к конвертации:​

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

    ​ для сохранения файла.​ использовать, и нажмите​ Эта страница переведена​. На ленте в​ её активировать. Переходим​

    1. ​«Открыть»​
    2. ​ откройте в меню​
    3. ​ проверки карт XML.​ программ. В данном​Перейдите на вкладку «Разработчик».​
    4. ​ в другие форматы,​ XML-таблица не выбрана​2​
    5. ​ списки, которые в​ приводим ссылку на​

    ​ есть другой список​ его туда, где​В Excel 2007 нажмите​ кнопку​ автоматически, поэтому ее​ блоке инструментов​ во вкладку​

    Способ 2: опция «Импорт данных» в Excel

    ​.​ «Разработчик» инструмент «Свойства​ В образцах –​ случае это онлайн-сервис​На панели инструментов выберите​ так сказать, для​ и книга содержит​. DOMDocument50​ версиях приложения позднее​ оригинал (на английском​ элементов.​ он должен отображаться.​Кнопку Microsoft Office​ОК​

    1. ​ текст может содержать​
    2. ​«XML»​
    3. ​«Файл»​
    4. ​Запускается окно открытия файлов.​
    5. ​ карты».​ основные элементы, структура​ Convertio.​ пункт «Импорт».​
    6. ​ лучшего взаимодействия. В​

    ​ две или более​Кому:​ Excel 2003 называются​ языке) .​Ненормированные данные.​

    1. ​Элемент представляет собой рекурсивную​
    2. ​, щелкните стрелку​.​
    3. ​ неточности и грамматические​кликаем по кнопке​и кликаем по​
    4. ​ Переходим в директорию,​Возможности:​ XML. Копируете –​Автор: Вадим Матузок​
    5. ​Откроется окно, в котором​ этой статье будут​ карт XML.​XMLDoc​ таблицами Excel.​Если необходимо создать файл​ XML-таблица содержит элемент, который​

    ​ структуру.​ рядом с кнопкой​Это диалоговое окно отображается​ ошибки. Для нас​«Источник»​ пункту​ где содержится файл,​Каждый новый файл будет​ вставляете в программу​Microsoft Excel – удобный​

    Способ 3: с помощью интернет-сервиса

    ​ необходимо выбрать файл​ приведены возможные конвертеры​В большом диалоговом окне​как MSXML2 описывается. DOMDocument​Дополнительные сведения о работе​ XML-данных и файл​ в соответствии с​Типичный пример рекурсивной структуры —​Сохранить как​ только в том​ важно, чтобы эта​

    1. ​. В открывшемся поле​«Параметры»​ который нам нужен.​
    2. ​ проверяться программой Excel​ «Блокнот» — сохраняете​ инструмент для организации​ формата XML.​ XML в XLS.​Экспорт XML​Нажмите клавишу F5 для​ с этой надстройкой​ схемы XML из​ определением в схеме​
    3. ​ иерархия сотрудников и​и нажмите кнопку​ случае, если не​ статья была вам​ в левой части​
    4. ​.​

    ​ Он должен быть​ на соответствие установленной​ с нужным расширением.​ и структурирования самых​Появится окно с предложением​ Другими словами, мы​в поле​ поиска следующей строки,​ см. в статье​ диапазона ячеек на​ должен встречаться один​ руководителей, в которой​Другие форматы​

    ​ выбрана XML-таблица и​ полезна. Просим вас​ окна жмем на​В открывшемся окне параметров​ в одном из​ карте (если поставим​​ разнообразных данных. Он​ создать схему на​ расскажем о способах​Имя файла​ содержащей текст «XMLDoc​ Использование надстройки «Средства​ листе, можно использовать​

    Собрать данные из XML файлов в Excel и экспортировать

    ​ одни и те​.​ книга содержит несколько​ уделить пару секунд​ кнопку​ перемещаемся в подраздел​ форматов Эксель –​

    ​ галочку напротив этого​Один из вариантов:​ позволяет обрабатывать информацию​ основе данных. Нажмите​ преобразования одного формата​введите имя файла​ As msxml2.DOMDocument50″, нажмите​

    Как создать XML-файл из Excel

    ​ XML» версии 1.1 для​ версию 1.1 надстройки​maxoccurs​ же XML-элементы вложены​В поле​

    ​ карт XML.​ и сообщить, помогла​

    1. ​«Карты XML…»​«Настройка ленты»​ XLS или XLSX.​ пункта).​Нажимаем кнопку Office. Выбираем​
    2. ​ разными методами, редактировать​ кнопку ОК.​ в другой.​
    3. ​ XML-данных.​ кнопку​
    1. ​ «Средства XML для​присвоено значение 1).​
    2. ​ на нескольких уровнях.​Имя файла​В большом диалоговом окне​ ли она вам,​.​. В правой части​ Выбираем его и​Данные могут обновляться. Либо​
    3. ​ «Сохранить как» -​ массивы данных.​После этого появится второе​
    4. ​Ввиду того, что Excel​Нажмите кнопку​ОК​Введите данные, для которых​ Excel 2003″ для​ При добавлении такого​ Возможно, вы сопоставили​введите имя файла​Экспорт XML​
    5. ​ с помощью кнопок​
    6. ​В открывшемся окне кликаем​ окна устанавливаем галочку​ жмем на кнопку​ новая информация добавится​ «Другие форматы».​
    7. ​Рассмотрим возможности использования его​
    8. ​ окно, в котором​ безупречно работает с​Экспорт​и измените строку,​ необходимо создать файл​ расширения существующих возможностей​

    ​ элемента в XML-таблицу​

    ​ все элементы в​ данных XML.​

    1. ​в поле​ внизу страницы. Для​ по кнопке​ около значения​«Открыть»​ в существующую таблицу​
    2. ​Назначаем имя. Выбираем место​ для формирования и​ вам нужно определиться​ файлами блочного формата,​.​ как в предыдущем​ XML-данных и файл​ XML в Microsoft​

    ​ Excel заполнит столбец​

    Как сохранить файл Excel в формате XML

    ​ области задач «Источник​

    1. ​В списке​Имя файла​ удобства также приводим​
    2. ​«Добавить…»​«Разработчик»​, расположенную в нижней​

    ​ (имеет смысл, если​

    ​ сохранения и тип​ обработки файлов веб-приложений.​ с местом расположения​ то и расширение​Примечание:​ пункте.​ схемы XML. Данные​

    1. ​ таблицы несколькими его​ XML». Но Excel​Тип файла​введите имя файла​ ссылку на оригинал​
    2. ​.​. После этого жмем​ части окна.​ нужно собрать данные​
    3. ​ файла – XML.​ На конкретном примере​

    Как открыть XML файл в Excel

    1. ​ импортируемой таблицы. Кликните​ XML она может​ При создании карт XML​
    2. ​Нажмите F5 еще раз,​ должны быть представлены​
    3. ​ более поздних версиях.​

    ​ экземплярами.​ не поддерживает рекурсивные​выберите тип​ XML-данных.​

    Как преобразовать файл XML в Excel

    1. ​ (на английском языке).​Запускается окно выбора источника.​
    2. ​ на кнопку​Как видим, файл был​ из похожих файлов).​
    3. ​Сохранить.​ изучим основы работы​ по ячейке A1​ открыть без проблем.​ и экспорте данных​ чтобы найти и​ в табличном формате​Чтобы скачать надстройку, щелкните​
    4. ​Выбор.​ структуры глубиной более​Данные XML​

    ​Нажмите кнопку​После импорта данных XML,​ Переходим в директорию​

    Как собрать данные из XML файлов в Excel

    ​«OK»​ открыт, а его​Это все ручные способы​Если выдает ошибку, книгу​ с XML в​ и нажмите ОК.​ Так что можно​ в Excel в​ изменить другие экземпляры​ в виде столбцов​

    ​ ссылку Надстройка «Средства​ Сопоставленный элемент является частью​ одного уровня, поэтому​и нажмите кнопку​Экспорт​ сопоставления данных с​ расположения схемы составленной​

    ​, размещенную в нижней​ данные отобразились на​ импорта и экспорта​ можно сохранить в​

    1. ​Файл импортируется в программу​ без зазрения совести​ XML-файлы существует ограничение​ строки.​ и строк (так​ XML» для Excel​
    2. ​ конструкции схемы .​ сопоставить все элементы​Сохранить​.​ ячейками листа и​ ранее, выбираем её​

    ​ части окна. Вкладка​ текущем листе. Опять​ файлов.​

    Источник

    Содержание

    • Процедура конвертации
      • Способ 1: простое сохранение
      • Способ 2: инструменты разработчика
    • Вопросы и ответы

    Конвертация из Microsoft Excel в XML

    XML – это универсальный формат работы с данными. Его поддерживает множество программ, в том числе из сферы СУБД. Поэтому конвертация информации в XML важна именно с точки зрения взаимодействия и обмена данными между различными приложениями. Excel как раз входит в число программ, которые работают с таблицами, и даже может выполнять манипуляции с базами данных. Разберемся, как конвертировать файлы Эксель в XML.

    Процедура конвертации

    Конвертация данных в формат XML не такой уж простой процесс, так как в его ходе должна быть создана специальная схема (schema.xml). Впрочем, для преобразования информации в простейший файл данного формата достаточно иметь под рукой обычные инструменты сохранения в Excel, а вот для создания хорошо структурированного элемента придется основательно повозиться с составлением схемы и её подключением к документу.

    Способ 1: простое сохранение

    В Excel можно сохранить данные в формате XML, просто воспользовавшись меню «Сохранить как…». Правда, нет гарантии, что потом все программы будут корректно работать с файлом, который был создан таким способом. Да и не во всех случаях этот способ работает.

    1. Запускаем программу Excel. Для того, чтобы открыть элемент, подлежащий конвертации переходим во вкладку «Файл». Далее жмем по пункту «Открыть».
    2. Переход к открытию файла в Microsoft Excel

    3. Запускается окно открытия файлов. Переходим в директорию, где содержится файл, который нам нужен. Он должен быть в одном из форматов Эксель – XLS или XLSX. Выбираем его и жмем на кнопку «Открыть», расположенную в нижней части окна.
    4. Открытие файла в Microsoft Excel

    5. Как видим, файл был открыт, а его данные отобразились на текущем листе. Опять переходим во вкладку «Файл».
    6. Переход во вкладку Файл в Microsoft Excel

    7. После этого переходим по пункту «Сохранить как…».
    8. Переход к сохранению файла в Microsoft Excel

    9. Открывается окно сохранения. Переходим в ту директорию, в которой желаем, чтобы хранился конвертированный файл. Впрочем, можно оставить и директорию по умолчанию, то есть ту, что предложила сама программа. В этом же окне, если возникнет желание, можно изменить наименование файла. Но основное внимание нужно обратить на поле «Тип файла». Раскрываем перечень кликом по данному полю.
      Переход к выбору типа файла в Microsoft Excel

      Среди вариантов сохранения ищем наименование «Таблица XML 2003» или «XML-данные». Выбираем один из этих пунктов.

    10. Сохранение в формате XML в Microsoft Excel

    11. После этого жмем на кнопку «Сохранить».

    Сохранение документа в Microsoft Excel

    Таким образом, преобразование файла из формата Excel в XML будет совершено.

    Способ 2: инструменты разработчика

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

    1. По умолчанию вкладка инструментов разработчика отключена. Поэтому, прежде всего, нужно её активировать. Переходим во вкладку «Файл» и кликаем по пункту «Параметры».
    2. Переход в параметры в Microsoft Excel

    3. В открывшемся окне параметров перемещаемся в подраздел «Настройка ленты». В правой части окна устанавливаем галочку около значения «Разработчик». После этого жмем на кнопку «OK», размещенную в нижней части окна. Вкладка инструментов разработчика теперь включена.
    4. Включение режима разработчика в Microsoft Excel

      Lumpics.ru

    5. Далее открываем таблицу Excel в программе любым удобным способом.
    6. Таблица в Microsoft Excel

    7. На её основе нам предстоит создать схему, которая формируется в любом текстовом редакторе. Для этих целей можно использовать и обычный Блокнот Windows, но лучше применять специализированное приложение для программирования и работы с языками разметки Notepad++. Запускаем эту программу. В ней создаем схему. На нашем примере она будет выглядеть, как показано внизу на скриншоте окна Notepad++.
      Схема в Notepad++

      Как видим, открывающим и закрывающим тегом для документа в целом служит «data-set». В этой же роли для каждой строки выступает тег «record». Для схемы вполне будет достаточно, если мы возьмем всего две строки таблицы, а не будем переводить её всю вручную в XML. Название открывающего и закрывающего тега столбца может быть произвольным, но в данном случае для удобства мы предпочли просто перевести русскоязычные наименования колонок на английский язык. После того, как данные внесены, просто сохраняем их через функционал текстового редактора в любом месте на жестком диске в формате XML под названием «schema».

    8. Опять переходим к программе Excel с уже открытой таблицей. Перемещаемся во вкладку «Разработчик». На ленте в блоке инструментов «XML» кликаем по кнопке «Источник». В открывшемся поле в левой части окна жмем на кнопку «Карты XML…».
    9. Переход к выбору источника в Microsoft Excel

    10. В открывшемся окне кликаем по кнопке «Добавить…».
    11. Переход к добавлению схемы в Microsoft Excel

    12. Запускается окно выбора источника. Переходим в директорию расположения схемы составленной ранее, выбираем её и кликаем по кнопке «Открыть».
    13. Выбор схемы в Microsoft Excel

    14. После того, как элементы схемы появились в окне, перетаскиваем их с помощью курсора в соответствующие ячейки наименования столбцов таблицы.
    15. Измененные наименования столбцов в Microsoft Excel

    16. Кликаем правой кнопкой мыши по полученной таблице. В контекстном меню последовательно переходим по пунктам «XML» и «Экспорт…». После этого сохраняем файл в любой директории.

    Переход в экспорт в Microsoft Excel

    Как видим, существуют два основных способа конвертации файлов XLS и XLSX в формат XML программой Microsoft Excel. Первый из них предельно простой и заключается в элементарной процедуре сохранения с заданным расширением через функцию «Сохранить как…». Простота и понятность данного варианта, несомненно, являются преимуществами. Но у него есть один очень серьезный недостаток. Преобразование выполняется без учета определенных стандартов, и поэтому файл, конвертируемый таким способом, сторонними приложениями может просто не распознаваться. Второй вариант предполагает составление карты XML. В отличие от первого способа, таблица, преобразованная по данной схеме, будет соответствовать всем стандартам качества XML. Но, к сожалению, не каждый пользователь сможет быстро разобраться с нюансами этой процедуры.

    Еще статьи по данной теме:

    Помогла ли Вам статья?

    xml diagram

    Microsoft Excel makes it easy to import Extensible Markup Language (XML) data that is created from other databases and applications, to map XML elements from an XML schema to worksheet cells, and to export revised XML data for interaction with other databases and applications. Think of these XML features as turning Office Excel into an XML data file generator with a familiar user interface.

    In this article

    • Why use XML in Excel?

      • XML data and schema files

      • Key XML and Excel scenarios

    • The basic process of using XML data in Excel

    • Working with XML maps

      • Using the XML Source task pane

      • Element types and their icons

      • Working with single-mapped cells

      • Working with repeating cells in XML tables

      • XML map security considerations

      • Importing XML data

      • Working with an inferred schema

      • Exporting XML data

      • Using the Excel macro-enabled Office Open XML Format file

    Why use XML in Excel?

    XML is a technology that is designed for managing and sharing structured data in a human-readable text file. XML follows industry-standard guidelines and can be processed by a variety of databases and applications. Using XML, application designers can create their own customized tags, data structures, and schemas. In short, XML greatly eases the definition, transmission, validation, and interpretation of data between databases, applications, and organizations.

    XML data and schema files

    Excel works primarily with two types of XML files:

    • XML data files (.xml), which contain the custom tags and structured data.

    • Schema files (.xsd), which contain schema tags that enforce rules, such as data type and validation.

    The XML standard also defines Extensible Stylesheet Language Transformation (XSLT) (.xslt) files, which are used to apply styles and transform XML data into different presentation formats. You can apply these transforms before you import XML files into Excel and after you export XML files from Excel. If XSLT files are linked to XML data files that you import into Excel, you do have the option to apply or not apply the formatting before the data is added to the worksheet, but only when you open an XML file by using the Open command from within Excel. Choose the XML Files (*.xml) file type before you click the Open button to see the XML files in the folder.

    Key XML and Excel scenarios

    By using XML and Excel, you can manage workbooks and data in ways that were previously impossible or very difficult. By using XML maps, you can easily add, identify, and extract specific pieces of business data from Excel documents. For example, an invoice that contains the name and address of a customer or a report that contains last quarter’s financial results are no longer just static reports. You can easily import this information from databases and applications, revise it, and export it to the same or other databases and applications.

    The following are key scenarios that the XML features are designed to address:

    • Extend the functionality of existing Excel templates by mapping XML elements onto existing cells. This makes it easier to get XML data into and out of your templates without having to redesign them.

    • Use XML data as input to your existing calculation models by mapping XML elements onto existing worksheets.

    • Import XML data files into a new workbook.

    • Import XML data from a Web service into your Excel worksheet.

    • Export data in mapped cells to XML data files independent from other data in the workbook.

    Top of Page

    The basic process of using XML data in Excel

    The following diagram shows how the different files and operations work together when you use XML with Excel. Essentially, there are five phases to the process:

    Overview of how Excel works with XML data

    Adding an XML schema file (.xsd) to a workbook

    Callout 2 Mapping XML schema elements to individual cells or XML tables

    Callout 3 Importing an XML data file (.xml) and binding the XML elements to mapped cells

    Callout 4 Entering data, moving mapped cells, and leveraging Excel functionality, while preserving XML structure and definitions

    Callout 5 Exporting revised data from mapped cells to an XML data file

    Working with XML maps

    You can create or open a workbook in Excel, attach an XML schema file (.xsd) to the workbook, and then use the XML Source task pane to map XML elements of the schema to individual cells or tables. After you map the XML elements to your worksheet, you can import and export XML data into and out of the mapped cells.

    When you add an XML schema file (.xsd) to your workbook, you create an XML map. In general, XML maps are used to create mapped cells and to manage the relationship between mapped cells and individual elements in the XML schema. In addition, these XML maps are used to bind the contents of mapped cells to elements in the schema when you import or export XML data files (.xml).

    There are two kinds of mapped cells that you can create: single-mapped cells and repeating cells (which appear as XML tables). To make designing your worksheet more flexible, you can drag the mapped cells anywhere on a worksheet and into any order — even one different from the XML schema. You can also choose which elements to map and not map.

    The following rules about using XML maps are important to know:

    • A workbook can contain one or more XML maps.

    • You can only map one element to one location in a workbook at a time.

    • Each XML map is an independent entity, even if multiple XML maps in the same workbook refer to the same schema.

    • An XML map can only contain one root element. If you add a schema that defines more than one root element, you are prompted to choose the root element to use for the new XML map.

    Using the XML Source task pane

    You use the XML Source task pane to manage XML maps. To open it, on the Developer tab, in the XML group, click Source. The following diagram shows the main features of this task pane.

    XML Source task pane

    1.  Lists XML maps that were added to the workbook

    2.  Displays a hierarchical list of XML elements in the currently listed XML map

    3.  Sets options when working with the XML Source task pane and the XML data, such as how to preview the data and control headings

    4.  Opens the XML Maps dialog box, which you can use to add, delete, or rename XML maps

    5.  Verifies whether you can export XML data through the current XML map

    Top of Page

    Element types and their icons

    The following table summarizes each type of XML element that Excel can work with and the icon that is used to represent each type of element.

    Element type

    Icon

    Parent element

    Button image

    Required parent element

    Button image

    Repeating parent element

    Icon image

    Required repeating parent element

    Icon image

    Child element

    Button image.

    Required child element

    Icon image

    Repeating child element

    Icon image

    Required repeating child element

    Icon image

    Attribute

    Icon image

    Required attribute

    Icon image

    Simple content in a complex structure

    Icon image

    Required simple content in a complex structure

    Button image

    Top of Page

    Working with single-mapped cells

    A single-mapped cell is a cell that has been mapped to a nonrepeating XML element. You create a single-mapped cell by dragging a nonrepeating XML element from the XML Source task pane onto a single cell in your worksheet.

    When you drag a nonrepeating XML element onto the worksheet, you can use a smart tag to choose to include the XML element name as a heading above or just to the left of the single-mapped cell, or you can use an existing cell value as a heading.

    You can also use a formula in a single-mapped cell, if the cell is mapped to an XML element with an XML Schema Definition (XSD) data type that Excel interprets as a number, date, or time.

    Top of Page

    Working with repeating cells in XML tables

    XML tables are similar in appearance and functionality to Excel tables. An XML table is an Excel table that has been mapped to one or more XML repeating elements. Each column in the XML table represents an XML element.

    An XML table is created when you:

    • Use the Import command (in the XML group on the Developer tab) to import an XML data file.

    • Use the Open command from within Excel to open an XML data file — and then select As an XML table in the Open XML dialog box.

    • Use the From XML Data Import command (from the From Other Sources command button, in the Get External Data group, on the Data tab) to import an XML data file — and then select XML table in existing worksheet or New worksheet in the Import Data dialog box.

    • Drag one or more repeating elements from the XML Source task pane to a worksheet.

    When you create an XML table, the XML element names are automatically used as column headings. You can change these to any column headings that you want. However, the original XML element names are always used when you export data from the mapped cells.

    Two options under the Options button in the XML Source task pane are useful when you work with XML tables:


    • Automatically Merge Elements When Mapping
          When selected, Excel creates one XML table from multiple fields as they are dropped onto the worksheet. This option works as long as the multiple fields are dropped on the same row, one adjacent to the other. When this option is cleared, each element appears as its own XML table.


    • My Data Has Headings
          When selected, existing heading data is used as column headings for repeating elements that you map to your worksheet. When this option is cleared, the XML element names are used as column headings.

    Using XML tables, you can easily import, export, sort, filter, and print data based on an XML data source. However, XML tables do have some limitations regarding how they can be arranged on the worksheet.

    • XML tables are row-based, meaning that they grow from the header row down. You cannot add new entries above existing rows.

    • You cannot transpose an XML table so that new entries will be added to the right.

    You can use formulas in columns that are mapped to XML elements with an XML Schema Definition (XSD) data type that Excel interprets as a number, date, or time. Just as in an Excel table, formulas in an XML table are filled down the column when new rows are added to the table.

    XML map security considerations

    An XML map and its data source information are saved with the Excel workbook, not a specific worksheet. A malicious user can view this map information by using a Microsoft Visual Basic for Applications (VBA) macro. Furthermore, if you save your workbook as a macro-enabled Excel Office Open XML Format File, this map information can be viewed through Microsoft Notepad or through another text-editing program.

    If you want to keep using the map information but remove the potentially sensitive data source information, you can delete the data source definition of the XML schema from the workbook, but still export the XML data, by clearing the Save data source definition in workbook check box in the XML Map Properties dialog box, which is available from the Map Properties command in the XML group on the Developer tab.

    If you delete a worksheet before you delete a map, the map information about the data sources, and possibly other sensitive information, is still saved in the workbook. If you are updating the workbook to remove sensitive information, make sure that you delete the XML map before you delete the worksheet, so that the map information is permanently removed from the workbook.

    Top of Page

    Importing XML data

    You can import XML data into an existing XML map in your workbook. When you import data, you bind the data from the file to an XML map that is stored in your workbook. This means that each data element in the XML data file has a corresponding element, in the XML schema, that you mapped from an XML Schema file or inferred schema. Each XML map can only have one XML data binding, and an XML data binding is bound to all of the mappings that were created from a single XML map.

    You can display the XML Map Properties dialog box (Click Map Properties in the XML group on the Developer tab.), which has three options, all selected by default, that you can set or clear to control the behavior of an XML data binding:

    • Validate data against schema for import and export    Specifies whether Excel validates data against the XML map when importing data. Click this option when you want to ensure that the XML data that you import conforms to the XML schema.

    • Overwrite existing data with new data    Specifies whether data is overwritten when you import data. Click this option when you want to replace the current data with new data, for example, when up-to-date data is contained in the new XML data file.

    • Append new data to existing XML tables    Specifies whether the contents of the data source are appended to the existing data on the worksheet. Click this option, for example, when you are consolidating data from several similar XML data files into an XML table, or you do not want to overwrite the contents of a cell that contains a function.

    When you import XML data, you may want to overwrite some mapped cells but not others. For example, some mapped cells may contain formulas and you don’t want to overwrite the formula when you import an XML file. There are two approaches that you can take:

    • Unmap the elements that you don’t want overwritten, before you import the XML data. After you import the XML data, you can remap the XML element to the cells containing the formulas, so that you can export the results of the formulas to the XML data file.

    • Create two XML maps from the same XML schema. Use one XML map for importing the XML data. In this «Import» XML map, don’t map elements to the cells that contain formulas or other data that you don’t want overwritten. Use another XML map for exporting the data. In this «Export» XML map, map the elements that you want to export to an XML file.

    Note: The ability to import XML data from a Web service by using a Data Retrieval Service Connection (.uxdc) file to connect to a data source is no longer supported in versions later than Excel 2003 through the user interface. If you open a workbook that was created in Excel 2003, you can still view the data, but you cannot edit or refresh the source data.

    Working with an inferred schema

    If you import XML data without first adding a corresponding XML schema to create an XML map, Excel tries to infer a schema for you based on the tags that are defined in the XML data file. The inferred schema is stored with the workbook, and the inferred schema allows you to work with XML data if an XML schema file isn’t associated with the workbook.

    When you work with imported XML data that has an inferred schema, you can also customize the XML Source task pane. Select the Preview Data in Task Pane option from the Options button to display the first row of data as sample data in the element list, if you imported XML data associated with the XML map in the current session of Excel.

    You cannot export the Excel inferred schema as a separate XML schema data file (.xsd). Although there are XML schema editors and other methods for creating an XML schema file, you may not have convenient access to them or know how to use them. As an alternative, you can use the Excel 2003 XML Tools Add-in Version 1.1, which can create a schema file from an XML map. For more information, see Using the Excel 2003 XML Tools Add-in Version 1.1.

    Exporting XML data

    You export XML data by exporting the contents of mapped cells on the worksheet. When you export data, Excel applies the following rules to determine what data to save and how to save it:

    • Empty items are not created when blank cells exist for an optional element, but empty items are created when blank cells exist for a required element.

    • Unicode Transformation Format-8 (UTF-8) encoding is used to write the data.

    • All namespaces are defined in the Root XML element.

    • Excel overwrites existing namespace prefixes. The default namespace is assigned a prefix of ns0. Successive namespaces are designated ns1, ns2 to ns<count> where <count> is the number of namespaces written to the XML file.

    • Comment nodes are not preserved.

    You can display the XML Map Properties dialog box (Click Map Properties in the XML group on the Developer tab.) and then use the Validate data against schema for import and export option (active by default) to specify whether Excel validates data against the XML map when exporting data. Click this option when you want to ensure that the XML data you export conforms to the XML schema.

    Using the Excel Macro-enabled Office Open XML Format File

    You can save an Excel workbook in a variety of file formats, including the Excel macro-enabled Office Open XML Format File (.xlsm). Excel has a defined XML schema that defines the contents of an Excel workbook, including XML tags that store all workbook information, such as data and properties, and define the overall structure of the workbook. Custom applications can use this Excel macro-enabled Office XML Format File. For example, developers may want to create a custom application to search for data in multiple workbooks that are saved in the this format and create a reporting system based on the data found.

    Top of Page

    Need more help?

    You can always ask an expert in the Excel Tech Community or get support in the Answers community.

    See Also

    Import XML data

    Map XML elements to cells in an XML Map

    Export XML data

    Append or overwrite mapped XML data

    XML (eXtensible Markup Language) is a data-management system based on flat files. It is is widely used by small businesses because of its portability and its compatibility with multiple platforms. It provides a means of storing, accessing and sharing data without the complexities or overhead of a relational-database management system. You can create XML data from a Microsoft Excel 2003 worksheet or workbook, but you’ll need to do some manual steps to get the data to conform to valid XML format. You’ll need to create a data map, define the XML tags and then map them to the columns in the worksheet before you can export the XML file.

    1. Launch Microsoft Excel 2003.

    2. Create a new Excel workbook by selecting “New” from the “File” menu in the Excel application and selecting the option to create a blank workbook.

    3. Type the data, including row and column headings, into contiguous worksheet cells and save the file by choosing the “Save” option from the file menu. If you already have an Excel file containing the data that you’d like to export as XML, select the “Open” option from the menu instead and locate and open the file. If the data is in a “.csv” or “.txt” file, use the “Import” option to load the file in the workbook.

    4. Create the XML map file for the data in your worksheet by launching the Notepad editor in Windows. The XML map file will serve as the XML schema for exporting properly formatted XML data from Excel, so you will need to create properly formatted XML elements in the map file for each record in your Excel worksheet. For example, if your worksheet contains student data with columns such as “Name” and “Address,” your XML file will need to look like this:

      <students> (Add an element for each row.) <student name=”Stephen” address =”Rockfort” /> <student name=”Kingfisher” address =”Castleton” />

      </students>

      Ensure that you save the map file with a “.xml” extension.

    5. Click on the “Data” menu in Excel and choose “XML,» then “XML Source” to open the «XML Source» task pane.

    6. Click on the “XML Maps” button, then click “Add” and choose the XML map file you created in Step 4. The elements from the map will be displayed in the pane.

    7. Drag each element from the “XML Source” pane to the corresponding column header in the Excel worksheet. This will create the associations and Excel will automatically create the required list objects.

    8. Choose “XML” then “Export” from the “Data” menu to create your exported XML data file.

    • Download sample files — 2.58 Kb

    Image 1

    Introduction

    Microsoft Excel 2003 supports XML in a variety of ways. One application of this XML functionality is the ability to export a list of data to an XML format. This is particularly useful when working with data originally in comma-separated value files (.csv files) or fixed-width data files. Both are plain text file formats, and are common import/export options for database and spreadsheet applications.

    Normally, an XSL stylesheet would be considered when transforming a data source to an XML output. An XSL stylesheet will not help us transform .csv or fixed-width data into XML however, as XSL requires an XML-based source. A .csv or fixed-width file is easily imported into Excel though, and with a few additional steps, may be exported to an XML format of choice.

    An Excel list becomes exportable to XML when assigned an XML map. An XML map is an XML schema or other file showing an example of the desired XML output, in which case Excel can infer the schema. Either is associated with the spreadsheet containing the list data. The user then may perform drag-and-drop operations to connect individual data fields from the map to the list source. Finally, the data is exported with a menu command.

    Step-by-step

    The starting point for this task is straightforward: Excel is open, and you have either entered or imported a list of data (e.g., a .csv file). Include a heading row, identifying field names at the top of each column. For practice, you may use the file Sample.xls which may be downloaded with the link at the top of this article.

    Image 2

    1. We will begin by creating the map file, which can be either an XML schema or a file showing example XML output. Open Notepad or your desired text editor.
    2. Enter and save the map file. For practice, you may use the file sectionsMap.xml that comes with the article download. In this illustration, we are creating an example XML document that demonstrates the output we wish to achieve rather than use a schema. Excel will read the example output and infer a schema appropriate for the map.

      For the example output, create a root element. Nested within the root, create an element that is associated with a single row of data in the list. The individual fields of data in the list row may be identified as attributes of that element, or as child elements of the parent.

      Once the element representing a full list row is complete, copy and paste it as a second element within the root. It is important that the example output imply multiple elements to associate with multiple list rows. The picture below shows the <section> tag repeated twice deliberately; this allows Excel to infer that it will repeat throughout the list of data.

      Image 3

      If the <section> tag were not repeated in the example output, Excel would treat its association as a single cell of data rather than a column of cells. Repeating the <section> element in the example allows Excel to infer an association to the column across multiple rows.

    3. In Excel, with the sheet containing your list of data active, choose the menu Data -> XML -> XML Source. The XML Source task pane opens.

      Image 4

    4. In the XML Source task pane, click the XML Maps… button.

      Image 5

    5. In the XML Maps dialog, click Add…, and select the schema or XML example output file you created in step #2. If you are using an XML example rather than a schema, like the sectionsMap.xml file from the article downloads, you will see the following dialog, which you may dismiss by clicking OK:

      Image 6

    6. In the XML Maps dialog, the map file will be added. Click OK to dismiss the dialog.
    7. The XML Source task pane will now display the map elements and attributes.

      Image 7

      This is a good time to verify Excel’s interpretation of the example output. Each of the icons in the XML map describes the interpretation of the given element or attribute.

      Image 8

      (source: Excel Help)

      The picture above shows that the <section> element in our example output file has been interpreted as a “repeating parent element”. The “repeating” aspect of this interpretation is necessary to correlate with repeating rows of list data. The element’s “children” are the individual fields of data across a given row.

    8. Now, it’s time to associate an individual child element or attribute in the map with its list column in the source. Do this by clicking and dragging a field from the map to the list column header to which it should be associated. When dropped on the column header, the list column will highlight and is automatically converted to an Excel List object.

      Image 9

    9. Repeat the drag-and-drop operation for each additional field, associating each field in the map with its respective column of list data by dropping it on top of the column header.

      Image 10

    10. With the XML associations made, it is time to export the data. Choose the menu Data -> XML -> Export… and specify the location/filename to create the new XML file.
    11. Open the newly created file in Notepad or another text editor to verify that the export has worked as desired.

      Image 11

    Summary

    A list of data in Excel, such as that which may be obtained from a .csv or fixed-width data file, may be exported to an XML format, provided an XML map has been assigned to the spreadsheet. An XML map may either be an XML schema describing the source data, or an XML document showing an example of the desired output format. In an example output file, a parent element is defined to correlate with a given list row. The parent element is repeated at least once in the example output, allowing Excel to infer its association to repeated rows in the list. Individual child attributes and elements may then be associated with respective list columns through a drag-and-drop operation, connecting the XML child to its related list field header. With the XML map in place and field items associated to columns of data, the data may be exported with the menu command Data -> XML -> Export. When converted to XML, the list data is then suitable for use as a source in an XSL transformation or any other XML application.

    License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here

    Written By


    University of Nevada, Las Vegas

    United States United States

    With a background in education, music, application development, institutional research, data governance, and business intelligence, I work for the University of Nevada, Las Vegas helping to derive useful information from institutional data. It’s an old picture, but one of my favorites.

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    Собрать данные из XML файлов в Excel и экспортировать

    Microsoft Excel – удобный инструмент для организации и структурирования самых разнообразных данных. Он позволяет обрабатывать информацию разными методами, редактировать массивы данных.

    Рассмотрим возможности использования его для формирования и обработки файлов веб-приложений. На конкретном примере изучим основы работы с XML в Excel.

    Как создать XML-файл из Excel

    XML – стандарт файла для передачи данных в Сети. Excel поддерживает его экспорт и импорт.

    Рассмотрим создание XML-файла на примере производственного календаря.

    1. Сделаем таблицу, по которой нужно создать XML файл в Excel и заполним ее данными.
    2. Создадим и вставим карту XML с необходимой структурой документа.
    3. Экспортируем данные таблицы в XML формат.
    1. Наша таблица – производственный календарь.
    2. Создаем в любом текстовом редакторе (например, «Блокнот») желаемую карту XML структуры для генерации файла сохраним. В данном примере буде использовать следующую карту структуры:
  • Открываем инструмент «Разработчик». Диалоговое окно «Источник» на вкладке XML.
  • Если программа Excel не видит карт XML, их нужно добавить. Жмем «карты XML». И указываем путь к нашему файлу с выше указанной схемой карты созданной в текстовом редакторе.
  • Добавить ОК.
  • В правой колонке появляются элементы схемы. Их нужно перетащить на соответствующие названия столбцов таблицы.
  • Проверяем возможен ли экспорт.
  • Когда все элементы будут сопоставлены, щелкаем правой кнопкой мыши по любой ячейке в таблице – XML – экспорт.
  • Сохраняем в XML файл.

    Другие способы получения XML-данных (схемы):

    1. Скачать из базы данных, специализированного бизнес-приложения. Схемы могут предоставляться коммерческими сайтами, службами. Простые варианты находятся в открытом доступе.
    2. Использовать готовые образцы для проверки карт XML. В образцах – основные элементы, структура XML. Копируете – вставляете в программу «Блокнот» — сохраняете с нужным расширением.

    Как сохранить файл Excel в формате XML

    Один из вариантов:

    1. Нажимаем кнопку Office. Выбираем «Сохранить как» — «Другие форматы».
    2. Назначаем имя. Выбираем место сохранения и тип файла – XML.

    Если выдает ошибку, книгу можно сохранить в виде таблицы XML 2003 либо веб-страницы. С этими форматами проблем, как правило, не возникает.

    1. Скачать конвертер XLC в XML. Либо найти сервис, с помощью которого можно экспортировать файл онлайн.
    2. Скачать с официального сайта Microsoft надстройку XML Tools Add-in. Она в бесплатном доступе.
    3. Открываем новую книгу. Кнопка Office – «Открыть».

    Как открыть XML файл в Excel

    1. Меняем формат на «файлы XML». Выбираем нужный файл. Жмем «Открыть».
    2. Способ открытия – XML-таблица. ОК.
    3. Появляется оповещение типа

    Жмем ОК. С полученной таблицей можно работать, как с любым файлом Excel.

    Как преобразовать файл XML в Excel

    1. Меню «Разработчик» — вкладка «Импорт».
    2. В диалоговом окне выбираем файл XML, который хотим преобразовать.
    3. Нажимаем «Импорт». Программа Excel предложит самостоятельно создать схему на основе полученных данных. Соглашаемся – ОК. Откроется окно, где нужно выбрать место для импортируемого файла.
    4. Назначаем диапазон для импорта. Лучше брать с «запасом». Жмем ОК.

    Созданную таблицу редактируем и сохраняем уже в формате Excel.

    Как собрать данные из XML файлов в Excel

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

    Каждый новый файл будет привязываться к имеющейся карте. Каждому элементу в структуре таблицы соответствует элемент в карте. Допускается только одна привязка данных.

    Чтобы настроить параметры привязки, откройте в меню «Разработчик» инструмент «Свойства карты».

    1. Каждый новый файл будет проверяться программой Excel на соответствие установленной карте (если поставим галочку напротив этого пункта).
    2. Данные могут обновляться. Либо новая информация добавится в существующую таблицу (имеет смысл, если нужно собрать данные из похожих файлов).

    Это все ручные способы импорта и экспорта файлов.

    Преобразование файлов Excel в XML и обратно

    Немного об Excel и XML

    Итак, прежде чем узнать, как открыть, создать или перевести файл XML в Excel и обратно, давайте поближе познакомимся с типами этих файлов. Здесь нужно сразу отметить, что документы Excel имеют множество форматов, в то время, как XML — и есть формат файла. Поэтому не стоит путать эти два понятия.

    Microsoft Excel является мощной программой для вычислений с множеством полезных функций

    Программа Microsoft Excel является специальной утилитой, предназначенной для создания и редактирования таблиц. С ними вы уже можете делать всё что угодно: создавать базы, диаграммы, формулы и другие типы данных. Это очень мощный инструмент, поэтому все его возможности мы обсуждать не будем. Сегодня наша цель несколько другая, и мы не станем отходить от темы сегодняшней дискуссии.

    Файлы XML, для более простого понимания, предназначены для хранения, обмена различных данных между утилитами. Особенно часто пользуются этим языком разметки при передаче информации через интернет. И когда вам нужно перенести табличные данные из Экселя на сайт, например, то вам нужно будет преобразовать свой документ, чтобы он правильно отображался. Поэтому давайте не будем оттягивать момент истины и сразу приступим к выполнению операции.

    Как преобразовать Excel в XML

    Дорогие друзья, на самом деле преобразование файлов является достаточно простым занятием. Однако, у некоторых пользователей могут возникнуть проблемы при переносе данных, поэтому сегодня мы с вами рассмотрим несколько способов для осуществления нашего замысла. Поэтому набираемся терпения и приступаем к действиям:

    1. Самый простой способ, который может не сработать в некоторых случаях, это сохранение файла в нужном формате в самой программе Microsoft Excel. Для этого откройте необходимый документ в этом приложении. Затем нажмите на кнопку «Файл» (рассматривается на примере Office 2013, в других версиях процесс сохранения может несколько отличаться) в верхнем левом углу окна Экселя, затем пункт «Сохранить как», после чего выберите место сохранения документа, дайте ему имя и во вкладке типа файла укажите «XML данные». После этого проверьте, правильно ли всё у вас получилось. Если нет, то пробуем следующие способы.
    2. Итак, если возникает ошибка в предыдущем случае, то, возможно, в вашей копии программы не предусмотрена поддержка и соответствующие надстройки. Чтобы их установить перейдите на сайт компании Microsoft http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=3108, скачайте и инсталлируйте этот файл к себе на компьютер или ноутбук. Далее, запустите программу Microsoft Excel и нажмите на большую цветную кнопку в левом верхнем углу окна приложения (здесь мы уже смотрим пример на версии 2007-го года). В появившемся блоке кликните по параметрам, слева от выхода из утилиты. Теперь зайдите в пункт надстроек и нажмите на кнопку «Перейти» напротив пункта «Управление». Выскочит диалоговое окно, где нужно кликнуть по обзору и найти документ, который вы скачали с сайта Майкрософта ранее. Теперь кликаем ОК и переходим в основное окно программы, где у вас теперь есть вкладка XML Tools — с помощью него теперь вы спокойно можете создать файл XML из существующей таблицы. Сохранять его нужно аналогично предыдущему пункту.
    3. Если вам совсем не хочется загружать и себя, и свой компьютер такой информацией, то можете прибегнуть к помощи специальных утилит-конвертеров или онлайн-версий этих программ. К примеру, вы можете загрузить приложение Format Factory, которое позволит вам совершить все необходимые действия. Но стоит помнить, что сохранённые и преобразованные таким образом файлы не всегда работают в дальнейшем. То есть во время операции могут повредиться сектора или области в памяти документа, что негативно скажется на нём — он попросту может не открыться в XML-редакторе, например. Поэтому рекомендуется использовать либо профессиональные программы, либо сам Microsoft Excel.

    Как перевести XML в Excel

    Прежде чем перевести XML в Excel, нужно его для начала открыть. Рассмотрим весь этот непродолжительный процесс ниже. Итак, приступаем:

    1. Запустите программу Microsoft Excel с помощью ярлыка на рабочем столе или через меню проводника.
    2. Нажмите на «Открыть другие книги» внизу главной страницы, если вы используете Office В других версиях процесс может несколько отличаться.
    3. Далее, нажимаем на «Компьютер» или другое место, где расположен ваш XML-файл, затем кликните «Обзор» и смените в появившемся окне тип данных на «Файлы XML».
    4. Теперь ищем необходимый файл и открываем его в нашей программе с помощью одноимённой кнопки.
    5. Далее, обсудим то, как преобразовать наш документ. Перейдите во вкладку разработчика, затем нажмите на кнопку импорта.
    6. В открывшемся окне нужно будет снова найти и выбрать наш документ, над которым вы и хотите произвести действие, затем кликаем на кнопку «Импорт».
    7. Затем настраиваете всё под себя: область для импорта, место сохранения и другие параметры. После чего вы получите таблицу, которую позже можно сохранить в нужном для вас формате. Как видите, ничего сложного нет.

    Подведём итоги

    Дорогие читатели, сегодня мы с вами узнали не только как преобразовать файлы XML в Excel и обратно, но и как создать и открыть их при несовместимости версий. Надеемся, что у вас всё получилось и больше не осталось никаких вопросов. Не забываем делиться в комментариях своим мнением и опытом: возможно, вы знаете простой способ конвертации. Расскажите другим пользователям, получилось ли у вас перевести один тип документа. Если сработало, то поделитесь тем, каким способом воспользовались вы.

    Конвертируем 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 SamplesOfficeExcel2003XMLToolsAddin

    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-данные, нажимаем «Сохранить».

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

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

    Экспорт Excel в XML и наоборот

    Вы можете конвертировать файл Excel в файл данных XML или наоборот. Это позволяет обмениваться информацией между различными приложениями. Для начала откройте вкладку Developer (Разработчик).

    Вот данные, которые мы хотим преобразовать в файл XML:

    Сперва создадим схему, основанную на исходных данных в формате XML. Схема определяет структуру XML-файла.

      Excel для этой цели не подойдёт, поэтому откройте, к примеру, Блокнот и вставьте следующие строки:

    Примечание: Теги названы по именам столбцов, но вы можете дать им любое название. Например, вместо – .

    1. Сохраните файл как schema.xml.
    2. Откройте книгу Excel.
    3. Кликните по Source (Источник) на вкладке Developer (Разработчик). Откроется XML панель задач.
    4. Чтобы добавить карту XML, нажмите кнопку XML Maps (XML карты).Появится диалоговое окно XML Maps (Карты XML).
    5. Нажмите Add (Добавить).
    6. Выберите schema.xml и дважды кликните ОК.
    7. Теперь просто перетащите 4 элемента из дерева в XML панели задач на лист (строка 1).
    8. Нажмите кнопку Export (Экспорт) в разделе XML на вкладке Developer (Разработчик).
    9. Сохраните файл и нажмите Enter.

    Это экономит немало времени!

    Примечание: Для импорта XML-файла откройте пустую книгу. На вкладке Developer (Разработчик) нажмите кнопку Import (Импорт) и выберите XML-файл.

    Как перевести документ Excel в формат XML?

    Очень нужно для сдачи алкогольной декларации в СКБ-Контур. Может кто-то знает?

    Как сохранить документ в формате XML:

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

    И все, нажимайте «Сохранить»!

    Для преобразования файла в Exel в формат XML не требуется никакого дополнительного программного обеспечения.

    Microsoft Excel предоставляет два формата файлов для XML. Один из них подходит только для версий Microsoft Excel 2002 и более ранних, другой формат понимается всеми более поздними версиями.

    1. Переходим в меню Файл в Microsoft Excel/ Сохранить как. Важно: обычная команда «сохранить» не предоставляет функциональные возможности конвертирования документов в другие форматы. А «сохранить как» обеспечит необходимое преобразование для документа экспортируемого в XML.
    2. Выберите «XML-данные» под «сохранить как» в раскрывающемся списке меню в нижней части диалогового окна. Это формат XML для всех версий Excel после 2002. Если файл XML будет использоваться более старыми программами Excel, выберите тип файла электронной таблицы XML.

    Введите желаемое имя файла для нового файла XML в поле «File Name». Укажите место в поле «Сохранить в».

    Нажмите на кнопку «Сохранить». Файл Microsoft Excel будет экспортирован в виде файла XML.

    Конвертируем excel файл xls в xml формат.

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

    Для того что бы начать конвертировать файл xls в xml нужно подготовить Microsoft Office Excel.

    Переходим на сайт Microsoft для того что бы скачать надстройку Excel 2003 Add-in: XML Tools Add-in

    скачать надстройку Excel 2003 Add-in: XML Tools Add-in xls в xml

    После того как вы скачали надстройку Excel 2003 Add-in: XML Tools Add-in для конвертации xls в xml, устанавливаем надстройку на свой компьютер. Программа установится по адресу c:Office SamplesOfficeExcel2003XMLToolsAddin

    Ну а теперь начинается самое интересное, активируем надстройку конвертера xls в Microsoft Office Excel. Для этого запускаем Excel и открываем «Параметры Excel» 

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.

    Затем переходим к пункту Надстройки и Перейти

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.

    Теперь перед вами открылось окно надстройки, судя по этому окну у нас программа спрашивает а где лежит наша новая надстройка, мы не тянем время и щелкаем по вкладке Обзор. Если вы были внимательны то в начале статьи я упомянул куда автоматически устанавливается надстройка OfficeExcel2003XMLToolsAddin, ну если вы скажем так забыли я вам напомню.

    Нажали вкладку Обзор и переходим на диск С, а точнее:

    С:Office SamplesOfficeExcel2003XMLToolsAddin

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.
    Теперь находим нашу надстройку XmlTools и нажимаем ОК

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.

    После того как вы нажали ОК, вам откроется опять окно с надстройками и в нем мы увидим нашу долгожданную надстройку XmlTools, смело ставим галочку и нажимаем ОК

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.

    Теперь посмотрим на нашу работу, смотрим на шапку Excel и видим меню Надстройки переходим на него и видим XML Tools это и есть наш конвертер.

    активируем надстройку конвертера xls - xml в Microsoft Office Excel.

    На этом установка и активация надстройки для конвертирования xls в xml закончена.

    Теперь будем учится конвертировать 

    Для этого нам нужно открыть файл xls который мы хотим конвертировать в xml, после этого в меню Надстройки открываем пункт XML Tools и в нем кликаем по пункту Convert a Range to an XML List

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

    После того как вы нажали Convert a Range to an XML List вам откроется окно Convert a Range to XML List в этом окне кликаем на вкладку Click here and drag select a range

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

    После того как у вас пропадет большое окно Convert a Range to an XML List и появится маленькое окошко Convert a Range to XML List, нужно будет выделить нужную вам область данных и нажать кнопку как показано на скриншоте

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

    После этого у вас все изменится как на скришоте, теперь сохраняем 

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

    Выбираем Сохранить как — Другие форматы тип файла выбираем XML

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

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

    Вот и все, у нас удалось конвертировать xls в xml

    Источник: http://www.rtiopt64.ru/blog/konverter_fajl_excel_xls_v_xml_format/2016-10-10-424

    Данный материал является частной записью члена сообщества Club.CNews.
    Редакция CNews не несет ответственности за его содержание.

    Is it possible to read the xml data or xml format of excel 2003 in open xml. Is there anyway we can read excel 2003 in 2007. We can ask customers to save excel 2003 in any format but we cannot ask them to store in 2007 .

    asked Mar 22, 2011 at 0:35

    user476566's user avatar

    No, you cannot read excel 2003 as Open XML since it is not stored as XML, but is stored in a proprietary binary file format called Binary Interchange File Format (BIFF). You can save from 2007 to a 2003 format, but you cannot do the opposite. I asked a similar question here.

    Community's user avatar

    answered Mar 22, 2011 at 12:13

    amurra's user avatar

    amurraamurra

    15.1k4 gold badges70 silver badges87 bronze badges

    4

    Office Open XML (OOX) has become the default format with the release of Office 2007, but back in the 2003’s days, Microsoft had already developed a format to store Excel workbooks as XML.
    A comprehensive overview is available here :
    Dive into SpreadsheetML (Part 1 of 2)
    Dive into SpreadsheetML (Part 2 of 2)

    Contrary to OOX where data and metadata are stored in a multipart archive, an Excel workbook file in SpreadsheetML 2003 format consists in a single XML instance, and therefore easily managed using built-in Oracle XML functions and XML DB features.
    In this article, I’ll focus on how to create and read such files with the help of SQL/XML functions, XSLT and XQuery.

     

    1. Writing a file

    The minimum valid structure for an instance looks like this :

    <?xml version="1.0" encoding="UTF-8"?>
    <?mso-application progid="Excel.Sheet"?>
    <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
     <Worksheet ss:Name="Sheet1">
      <Table>
       <Row>
        <Cell>
         <Data ss:Type="String">Employee No</Data>
        </Cell>
        <Cell>
         <Data ss:Type="String">Employee Name</Data>
        </Cell>
        <Cell>
         <Data ss:Type="String">Job</Data>
        </Cell>
       </Row>
       <Row>
        <Cell>
         <Data ss:Type="Number">7839</Data>
        </Cell>
        <Cell>
         <Data ss:Type="String">KING</Data>
        </Cell>
        <Cell>
         <Data ss:Type="String">PRESIDENT</Data>
        </Cell>
       </Row>
       <!-- More rows -->
      </Table>
     </Worksheet>
    </Workbook>
    

    It can be generated this way, with SQL/XML functions :

    SELECT XMLConcat(
             XMLPi("mso-application", 'progid="Excel.Sheet"')
           , XMLElement("Workbook",
               XMLAttributes(
                 'urn:schemas-microsoft-com:office:spreadsheet' as "xmlns"
               , 'urn:schemas-microsoft-com:office:spreadsheet' as "xmlns:ss"
               )
             , XMLElement("Worksheet",
                 XMLAttributes('Sheet1' as "ss:Name")
               , XMLElement("Table",
                   XMLElement("Row",
                     XMLForest(
                       XMLElement("Data", XMLAttributes('String' as "ss:Type"), 'Employee No') as "Cell"
                     , XMLElement("Data", XMLAttributes('String' as "ss:Type"), 'Employee Name') as "Cell"
                     , XMLElement("Data", XMLAttributes('String' as "ss:Type"), 'Job') as "Cell"
                     )
                   )
                 , XMLAgg(
                     XMLElement("Row",
                       XMLForest(
                         XMLElement("Data", XMLAttributes('Number' as "ss:Type"), e.empno) as "Cell"
                       , XMLElement("Data", XMLAttributes('String' as "ss:Type"), e.ename) as "Cell"
                       , XMLElement("Data", XMLAttributes('String' as "ss:Type"), e.job) as "Cell"
                       )
                     )
                     order by e.empno
                   )
                 )
               )
             )
           )
    FROM scott.emp e
    ;
    

    Although this query is relatively simple and efficient, we can imagine how cumbersome it could get to write queries for more complex requirements.
    So this is where XSLT comes into play. By creating a stylesheet working on a canonical XML input, we can hide the transformation logic and separate the data layer from the presentation layer.

    Following is an example generating a multisheet workbook and some additional Excel-specific formattings (frozen headers and tab color set to red for total salaries higher than 10,000).
    Here, I first stored the XSLT stylesheet in the XML DB repository. That’s not mandatory, we can also declare the stylesheet inline in the PL/SQL block, but it’s a good practice to keep the stylesheets in the database (repository or XMLType column in a relational table) if we intend to use them with the internal XSLT processor.

    The stylesheet (test.xsl) :

    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     xmlns="urn:schemas-microsoft-com:office:spreadsheet"  
     xmlns:x="urn:schemas-microsoft-com:office:excel" 
     xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
     <xsl:output method="xml" encoding="UTF-8"/>
     <xsl:template match="/">
      <xsl:processing-instruction name="mso-application">progid="Excel.Sheet"</xsl:processing-instruction>
      <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
                xmlns:x="urn:schemas-microsoft-com:office:excel" 
                xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
       <Styles>
        <Style ss:ID="h">
         <Interior ss:Color="#C0C0C0" ss:Pattern="Solid"/>
        </Style>
       </Styles>
       <xsl:apply-templates/>
      </Workbook>
     </xsl:template>
     <xsl:template match="ROWSET">
      <Worksheet ss:Name="{@name}">
       <Table>
        <Row>
         <xsl:for-each select="ROW[1]/*">
          <Cell ss:StyleID="h">
           <Data ss:Type="String">
            <xsl:value-of select="translate(local-name(), '_', ' ')"/>
           </Data>
          </Cell>
         </xsl:for-each>
        </Row>
        <xsl:apply-templates/>
       </Table>
       <x:WorksheetOptions>
        <x:FrozenNoSplit/>
        <x:SplitHorizontal>1</x:SplitHorizontal>
        <x:TopRowBottomPane>1</x:TopRowBottomPane>
        <x:ActivePane>2</x:ActivePane>
        <xsl:if test="@color">
         <x:TabColorIndex><xsl:value-of select="@color"/></x:TabColorIndex>
        </xsl:if>
       </x:WorksheetOptions>
      </Worksheet>
     </xsl:template>
     <xsl:template match="ROW">
      <Row>
       <xsl:apply-templates/>
      </Row>
     </xsl:template>
     <xsl:template match="ROW/*">
      <Cell>
       <Data ss:Type="String">
        <xsl:value-of select="."/>
       </Data>
      </Cell>
     </xsl:template>
    </xsl:stylesheet>
    

    The transformation code :

    DECLARE
      
      xmldoc CLOB;
     
    BEGIN
     
      select xmlserialize(document
               xmltransform(
                 xmlelement("ROOT",
                   xmlagg(
                     xmlelement("ROWSET",
                       xmlattributes(
                         d.dname as "name"
                       , case when sum(e.sal) > 10000 then '2' end as "color"
                       )
                     , xmlagg(
                         xmlelement("ROW",
                           xmlforest(
                             e.empno as "Employee_No"
                           , e.ename as "Employee_Name"
                           , e.job   as "Job"
                           , e.sal   as "Salary"
                           )
                         ) order by e.empno
                       )
                     ) order by d.deptno
                   )
                 )
               , xdburitype('/office/excel/stylesheets/out/test.xsl').getXML()
               )
               as clob
             )
      into xmldoc
      from scott.dept d
           join scott.emp e on e.deptno = d.deptno
      group by d.deptno
             , d.dname
      ;
      
      dbms_xslprocessor.clob2file(xmldoc, 'TEST_DIR', 'test.xml');
     
    END;
    /
    

    The output file :

    One of the most used Excel features is the Pivot Table generator. Creating such content is also possible directly from the database, using XSLT.
    For instance, here’s some “raw” data :

    SQL> select employee_id
      2       , first_name
      3       , last_name
      4       , extract(year from hire_date) as hire_year
      5       , job_id
      6  from hr.employees
      7  ;
     
    EMPLOYEE_ID FIRST_NAME           LAST_NAME                  HIRE_YEAR JOB_ID
    ----------- -------------------- ------------------------- ---------- ----------
            198 Donald               OConnell                        2007 SH_CLERK
            199 Douglas              Grant                           2008 SH_CLERK
            200 Jennifer             Whalen                          2003 AD_ASST
            201 Michael              Hartstein                       2004 MK_MAN
            202 Pat                  Fay                             2005 MK_REP
            203 Susan                Mavris                          2002 HR_REP
            204 Hermann              Baer                            2002 PR_REP
            205 Shelley              Higgins                         2002 AC_MGR
            206 William              Gietz                           2002 AC_ACCOUNT
            100 Steven               King                            2003 AD_PRES
            101 Neena                Kochhar                         2005 AD_VP
            102 Lex                  De Haan                         2001 AD_VP
            103 Alexander            Hunold                          2006 IT_PROG
    
    ...
    
            195 Vance                Jones                           2007 SH_CLERK
            196 Alana                Walsh                           2006 SH_CLERK
            197 Kevin                Feeney                          2006 SH_CLERK
     
    107 rows selected
     
    

    and we want to display, for a given job, the number of employees hired per year.
    In SQL, that’s called a dynamic pivot but it’s not possible – with conventional methods – to produce such a result set out of a single SELECT statement (because the number of columns has to be known at parse time).

    The PIVOT XML operator (11g) provides a partial answer to the problem by generating an XMLType containing aggregated “columns” (actually XML “elements”). The same functionality can be simulated in 10g too with XMLAgg and a partitioned outer join.
    But with that method, we still have to build the pivot in SQL, in the database.

    What I describe below let Excel do the job for us, through its standard pivot table functionality. We just have to generate a tab containing the raw data (hereafter named “DataSource”), and a tab (“PivotTable”) containing the minimum pivot table definition, i.e. no data and no cache.

    The stylesheet (pivot.xsl) :

    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     xmlns="urn:schemas-microsoft-com:office:spreadsheet"
     xmlns:x="urn:schemas-microsoft-com:office:excel"
     xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
     <xsl:output method="xml" encoding="UTF-8"/>
     <xsl:param name="filename"/>
     <xsl:template match="/">
      <xsl:processing-instruction name="mso-application">progid="Excel.Sheet"</xsl:processing-instruction>
      <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
                xmlns:x="urn:schemas-microsoft-com:office:excel"
                xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
       <xsl:apply-templates/>
      </Workbook>
     </xsl:template>
     <xsl:template match="ROWSET">
      <Worksheet ss:Name="DataSource">
       <Table>
        <Row>
         <Cell><Data ss:Type="String">EMPLOYEE_ID</Data></Cell>
         <Cell><Data ss:Type="String">FIRST_NAME</Data></Cell>
         <Cell><Data ss:Type="String">LAST_NAME</Data></Cell>
         <Cell><Data ss:Type="String">HIRE_YEAR</Data></Cell>
         <Cell><Data ss:Type="String">JOB_ID</Data></Cell>
        </Row>
        <xsl:apply-templates/>
       </Table>
      </Worksheet>
      <Worksheet ss:Name="PivotTable">
       <Table/>
       <x:PivotTable>
        <x:Name>My Pivot Table</x:Name>
        <x:ImmediateItemsOnDrop/>
        <x:ShowPageMultipleItemLabel/>
        <x:GrandTotalString>Total</x:GrandTotalString>
        <x:Location>R3C1:R4C2</x:Location>
        <x:PivotField>
         <x:Name>EMPLOYEE_ID</x:Name>
         <x:DataType>Integer</x:DataType>
        </x:PivotField>
        <x:PivotField>
         <x:Name>FIRST_NAME</x:Name>
        </x:PivotField>
        <x:PivotField>
         <x:Name>LAST_NAME</x:Name>
        </x:PivotField>
        <x:PivotField>
         <x:Name>HIRE_YEAR</x:Name>
         <x:Orientation>Column</x:Orientation>
         <x:AutoSortOrder>Ascending</x:AutoSortOrder>
         <x:Position>1</x:Position>
         <x:DataType>Integer</x:DataType>
         <x:PivotItem>
          <x:Name/>
         </x:PivotItem>
        </x:PivotField>
        <x:PivotField>
         <x:Name>JOB_ID</x:Name>
         <x:Orientation>Row</x:Orientation>
         <x:AutoSortOrder>Ascending</x:AutoSortOrder>
         <x:Position>1</x:Position>
         <x:PivotItem>
          <x:Name/>
         </x:PivotItem>
        </x:PivotField>
        <x:PivotField>
         <x:DataField/>
         <x:Name>Data</x:Name>
         <x:Orientation>Row</x:Orientation>
         <x:Position>-1</x:Position>
        </x:PivotField>
        <x:PivotField>
         <x:Name>Number of Employees</x:Name>
         <x:ParentField>EMPLOYEE_ID</x:ParentField>
         <x:Orientation>Data</x:Orientation>
         <x:Function>Count</x:Function>
         <x:Position>1</x:Position>
        </x:PivotField>
        <x:PTLineItems>
         <x:PTLineItem>
          <x:Item>0</x:Item>
         </x:PTLineItem>
        </x:PTLineItems>
        <x:PTLineItems>
         <x:Orientation>Column</x:Orientation>
         <x:PTLineItem>
          <x:Item>0</x:Item>
         </x:PTLineItem>
        </x:PTLineItems>
        <x:PTSource>
         <x:RefreshOnFileOpen/>
         <x:ConsolidationReference>
          <x:FileName>[<xsl:value-of select="$filename"/>]DataSource</x:FileName>
          <x:Reference>R1C1:R<xsl:value-of select="count(ROW)+1"/>C5</x:Reference>
         </x:ConsolidationReference>
        </x:PTSource>
       </x:PivotTable>
      </Worksheet>
     </xsl:template>
     <xsl:template match="ROW">
      <Row>
       <Cell><Data ss:Type="Number"><xsl:value-of select="EMPLOYEE_ID"/></Data></Cell>
       <Cell><Data ss:Type="String"><xsl:value-of select="FIRST_NAME"/></Data></Cell>
       <Cell><Data ss:Type="String"><xsl:value-of select="LAST_NAME"/></Data></Cell>
       <Cell><Data ss:Type="Number"><xsl:value-of select="HIRE_YEAR"/></Data></Cell>
       <Cell><Data ss:Type="String"><xsl:value-of select="JOB_ID"/></Data></Cell>
      </Row>
     </xsl:template>
     <xsl:template name="PivotTable">
     </xsl:template>
    </xsl:stylesheet>
    

    The transformation code :

    DECLARE
    
      res clob;
      v_filename varchar2(260) := 'test_pivot.xml';
    
    BEGIN
    
      select xmlserialize(document
               xmltransform(
                 xmlelement("ROWSET",
                   xmlagg(
                     xmlelement("ROW",
                       xmlforest(
                         employee_id
                       , first_name
                       , last_name
                       , extract(year from hire_date) as hire_year
                       , job_id
                       )
                     )
                   )
                 )
               , xdburitype('/office/excel/stylesheets/out/pivot.xsl').getXML()
               , 'filename="'''||v_filename||'''"'
               )
             )
      into res
      from hr.employees
      ;
    
      dbms_xslprocessor.clob2file(res, 'TEST_DIR', v_filename);
    
    END;
    /
    

    The output file :

    2. Reading a file

    I’ll divide this section in two parts : querying and optimizing.

    a) “One-shot” queries

    Let’s say we want to read this document (saved as XML 2003 format) as if it were a relational table :

    As usual, we’ll use an XMLType table to store the original file and then query from it.
    Examples in the present article were tested on 11g XE (11.2.0.2) so storage is Binary XML by default :

    create table tmp_xml of xmltype;
    
    insert into tmp_xml values(
      xmltype(
        bfilename('XML_DIR','test.xml')
      , nls_charset_id('AL32UTF8')
      )
    );
    

    The query involves two XMLTable() functions, the first one to break the document into separate worksheets, and the second to extract each row from them :

    SQL> select x1.sheetname
      2       , x2.id
      3       , x2.comments
      4       , x2.dt
      5  from tmp_xml t
      6     , xmltable(
      7         xmlnamespaces( default 'urn:schemas-microsoft-com:office:spreadsheet'
      8                      , 'urn:schemas-microsoft-com:office:spreadsheet' as "ss" )
      9       , '/Workbook/Worksheet'
     10         passing t.object_value
     11         columns sheetname varchar2(31) path '@ss:Name'
     12               , rowset    xmltype      path 'Table/Row'
     13       ) x1
     14     , xmltable(
     15         xmlnamespaces(default 'urn:schemas-microsoft-com:office:spreadsheet')
     16       , '/Row[position()>1]'
     17         passing x1.rowset
     18         columns id        number         path 'Cell[1]/Data'
     19               , comments  varchar2(2000) path 'Cell[2]/Data'
     20               , dt        timestamp      path 'substring-before(Cell[3]/Data,".")'
     21       ) x2
     22  where x1.sheetname = 'MyData-1'
     23  ;
     
    SHEETNAME               ID COMMENTS                                           DT
    --------------- ---------- -------------------------------------------------- -------------------------
    MyData-1                 1 This is a comment for line #1                      09/02/12 12:09:37,000000
    MyData-1                 2 This is a comment for line #2                      10/02/12 12:09:36,000000
    MyData-1                 3 This is a comment for line #3                      11/02/12 12:09:36,000000
    MyData-1                 4 This is a comment for line #4                      12/02/12 12:09:36,000000
    MyData-1                 5 This is a comment for line #5                      13/02/12 12:09:36,000000
    MyData-1                 6 This is a comment for line #6                      14/02/12 12:09:36,000000
    MyData-1                 7 This is a comment for line #7                      15/02/12 12:09:36,000000
    MyData-1                 8 This is a comment for line #8                      16/02/12 12:09:36,000000
    MyData-1                 9 This is a comment for line #9                      17/02/12 12:09:36,000000
    MyData-1                10 This is a comment for line #10                     18/02/12 12:09:36,000000
    MyData-1                11 This is a comment for line #11                     19/02/12 12:09:36,000000
    MyData-1                12 This is a comment for line #12                     20/02/12 12:09:36,000000
    MyData-1                13 This is a comment for line #13                     21/02/12 12:09:36,000000
    MyData-1                14 This is a comment for line #14                     22/02/12 12:09:36,000000
    MyData-1                15 This is a comment for line #15                     23/02/12 12:09:36,000000
    MyData-1                16 This is a comment for line #16                     24/02/12 12:09:36,000000
     
    16 rows selected
     
    
    b) Optimized access of the document

    If loading these documents in the database is a recurring task then, provided the structure doesn’t change, queries on the data can be optimized by creating a structured XML index on the XMLType table.
    With such an index in place, and depending on the size of the document, there could be a significant overhead at insert time, but it’s a trade-off : subsequent queries will be considerably faster.

    Here’s a small test case based on the following document (a 50,000-row worksheet, no header) :

    Document properties (I’ll define a virtual column to hold the title property) :


     

    Set up and query plan :

    -- Table creation : 
    create table ext_smldata of xmltype
    xmltype store as binary xml
    virtual columns (
      title as (
        XMLCast(
          XMLQuery(
          'declare default element namespace "urn:schemas-microsoft-com:office:spreadsheet"; (::)
           declare namespace o = "urn:schemas-microsoft-com:office:office"; (::)
           /Workbook/o:DocumentProperties/o:Title'
          passing object_value returning content
          )
          as varchar2(200)
        )
      )
    );
    
    -- Index on the "TITLE" virtual column : 
    create index ext_smldata_title_idx on ext_smldata (title);
    
    -- Structured XML index on the table : 
    create index ext_smldata_sxi on ext_smldata (object_value)
    indextype is xdb.xmlindex
    parameters (q'#
     XMLTable ext_smldata_xtb
       XMLNamespaces (default 'urn:schemas-microsoft-com:office:spreadsheet')
     , '/Workbook/Worksheet/Table/Row'
       COLUMNS rec_id      NUMBER       PATH 'Cell[1]/Data/text()'
             , description VARCHAR2(80) PATH 'Cell[2]/Data/text()'
             , rec_value   VARCHAR2(30) PATH 'Cell[3]/Data/text()'
    #');
    
    -- Insert : 
    insert into ext_smldata values(
      xmltype(
        bfilename('XML_DIR','smldata.xml')
      , nls_charset_id('AL32UTF8')
      )
    );
    
    
    SQL> set timing on
    SQL> set autotrace traceonly
    SQL> SELECT x.*
      2  FROM ext_smldata t
      3     , XMLTable(
      4         XMLNamespaces (default 'urn:schemas-microsoft-com:office:spreadsheet')
      5       , '/Workbook/Worksheet/Table/Row'
      6         PASSING t.object_value
      7         COLUMNS rec_id      NUMBER       PATH 'Cell[1]/Data/text()'
      8               , description VARCHAR2(80) PATH 'Cell[2]/Data/text()'
      9               , rec_value   VARCHAR2(30) PATH 'Cell[3]/Data/text()'
     10       ) x
     11  WHERE t.title = 'SampleData1'
     12  ;
    
    50000 rows selected.
    
    Elapsed: 00:00:01.69
    
    Execution Plan
    ----------------------------------------------------------
    Plan hash value: 3987672269
    
    ------------------------------------------------------------------------------------------------------
    | Id  | Operation                    | Name                  | Rows  | Bytes | Cost (%CPU)| Time     |
    ------------------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT             |                       | 59520 |  5405K|   174   (2)| 00:00:03 |
    |*  1 |  HASH JOIN                   |                       | 59520 |  5405K|   174   (2)| 00:00:03 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| EXT_SMLDATA           |     1 |    29 |     2   (0)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN          | EXT_SMLDATA_TITLE_IDX |     1 |       |     1   (0)| 00:00:01 |
    |   4 |   TABLE ACCESS FULL          | EXT_SMLDATA_XTB       | 59520 |  3720K|   171   (1)| 00:00:03 |
    ------------------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("T"."SYS_NC_OID$"="SYS_SXI_0"."OID")
       3 - access("T"."TITLE"='SampleData1')
    
    
    Statistics
    ----------------------------------------------------------
              0  recursive calls
              0  db block gets
           3962  consistent gets
             77  physical reads
           4796  redo size
        2823321  bytes sent via SQL*Net to client
          37083  bytes received via SQL*Net from client
           3335  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
          50000  rows processed
    
    

    The explain plan shows that the underlying relational table supporting the XML index is used to retrieve the data.

    Понравилась статья? Поделить с друзьями:
  • Xml format for excel
  • Xml for excel ribbon
  • Xml for excel import
  • Xml for excel 2013
  • Xml for excel 2010