Как создать xml файл из excel

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

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

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

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

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

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

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

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

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

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

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

  • После этого жмем на кнопку «Сохранить».
  • Таким образом, преобразование файла из формата Excel в XML будет совершено.

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

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

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

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

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

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

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

    В открывшемся окне кликаем по кнопке «Добавить…».

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

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

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

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник: lumpics.ru

    Простой экспорт в Excel XML

    При разработке системы электронного документооборота потребовалось реализовать функции для экспорта данных в популярных форматах. В частности, в формате Microsoft Excel. Требования к экспорту были довольно простые – экспортировать данные с минимумом форматирования, т.е. никаких объединенных ячеек, игр со шрифтами и т.п. Форматы экспорта XLSX и Excel XML.

    В данном случае расскажу про Excel XML.

    Итак, в любой системе оперирующей табличными данными раной или поздно возникает потребность экспорта данных. Цели экспорта разные:

    • передача данных в табличном виде
    • анализ данных в соотв. системах
    • построение диаграмм
    • построение сводных таблиц и т.п.

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

    Задача

    Технические требования сформулировал тривиально:

    • Оформить экспортирующий механизм в виде автономного класса
    • Реализовать в классе набор функций для записи значений ячеек и ряда
    • Возможность работы с неограниченным объемом данных.
    Читайте также:  Работа с таблицей в excel для начинающих

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

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

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

    Помимо описанных требований, понадобилось добавить сервисные функции:

    • Включение автофильтра
    • Сжатия файла в zip.

    Реализация

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

    Правда, именно в этой функции используются сущности системы документооборота — organization (организация) и user (пользователь). Заменить эти сущности на, скажем, строковые значения, не проблема.

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

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

    Но вот запись рядов – процесс поинтереснее. Класс должен работать быстро и обрабатывать неограниченный объем данных, ведь записей может быть тысяч сто или даже миллион! Хочешь скорости – работай с памятью, хочешь неограниченный объем данных – работай с диском. Чтобы помирить требования, реализовал функции resetRow и flushRow.
    Первая – очищает текущий ряд, после чего его снова можно наполнять данными, а вторая – записывает текущий ряд в открытый файл на диск. Их совместное использование позволяет выдерживать баланс между скоростью и объемом используемой памяти.

    Каждая ячейка записывается функцией соответствующей типу данных, а именно appendCellxxx, где xxx – тип данных. Допустимые типы данных: Num, String, Real, DateTime, Date, Time, Link. Пример функции для записи числового значения:

    После записи всех данных остается закрыть рабочий лист и рабочую книгу.

    Применение

    Использование описанного класса основано на экспорте данных с помощью провайдера CArrayDataProvider. Однако, предполагая, что объем экспортируемых данных может оказаться очень большим применен специальный итератор CDataProviderIterator, который перебирает возвращаемые данные по 100 записей (можно указать иное число записей).

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

    Скорость

    Кстати, на собственном опыте убедился, как важно предполагать возможность существования больших объемов данных при пакетной операции, такой как экспорт.
    Изначально, пытался осуществлять экспорт данных используя CActiveDataProvider, что требовало при экспорте 1000 записей порядка 240 секунд! Изменив запрос так, чтобы использовать CArrayDataProvider сократил время экспорта 1000 записей до 0.5 секунды!
    Специально для этой публикации замерил показатели экспорта.
    Экспортировал 1626 записей с 9 атрибутами, представляющих собой информацию о закрытых инцидентах (см. ITSM).

    Исходный вид экспортируемой таблицы

    (извините, картинка исчезает после публикации)

    Результат

    (извините, картинка исчезает после публикации)

    Показатели экспорта

    Объем конечного файла: 1 312 269
    Объем сжатого файла: 141 762
    Затраченное время: примерно 0.5 сек

    Кому интересно, может получить исходный код моего класса AlxdExportExcelXML безвозмездно. Только надо не забыть поправить функцию writeDocumentProperties, чтобы отвязаться от сущностей системы документооборота organization и user, или использовать свои аналогичные сущности с соответствующими свойствами.

    Источник: habr.com

    Экспорт 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-файл.

    Источник: office-guru.ru

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

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

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

    Источник: mrwildwolf666.name

    Собрать данные из 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. Данные могут обновляться. Либо новая информация добавится в существующую таблицу (имеет смысл, если нужно собрать данные из похожих файлов).

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

    Источник: exceltable.com

    Трюк №95. Загрузка документа XML в Excel

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

    В последние несколько лет язык XML (Extensible Markup Language, букв, «расширяемый язык разметки») стал распространенным форматом обмена информацией, и нет ничего необычного в том, что люди и организации отправляют друг другу файлы XML. Простые структуры, лежащие в основе XML, делают обмен информацией чрезвычайно простым, причем неважно, используют ли все стороны одно и то же программное обеспечение и браузеры. Однако до недавних пор, хотя общие утилиты XML стали широко распространены, заполнить пробел между документами XML и пользовательским интерфейсом было еще достаточно трудно. Microsoft Excel упрощает эту задачу, по крайней мере, для данных в сетке таблицы.

    В этом трюке используются возможности Excel, доступные только в Excel для Windows старше 2003 года. Более ранние версии Excel не поддерживают их; эти возможности не поддерживаются и в существующих, и планируемых версиях Excel для Macintosh.

    Начнем с простого документа XML, приведенного в листинге 8.1.

    // Листинг 8.1. Простой документ XML для анализа в Excel 2003-10-05 0596005385 Off1ce 2003 XML Essentia1s

    34.95 200 Zork’s Books

    2003-10-05 0596002920 XML in a Nutshell. 2nd Edition

    90 Zork’s Books 2003-10-05 0596002378 SAX2

    300 Zork’s Books 2003-10-05 0596005385 Office 2003 XML Essentials

    10 Books of Glory 2003-10-05 0596002920 XML in a Nutshell, 2nd Edition

    25 Books of Glory 2003-10-07 0596002378 SAX2

    5 Books of Glory 2003-10-18 0596002378 SAX2

    15 Title Wave 2003-10-21 0596002920 XML in a Nutshell. 2nd Edition

    15 Books for You

    Этот документ можно открыть непосредственно в Excel командой Файл → Открыть (File → Open). Откроется диалоговое окно (рис. 8.1).

    Рис. 8.1. Открытие файла XML в Excel

    Если вы выберете переключатель XML-список (As an XML list), то увидите предупреждение, что Excel создаст собственную схему для этого документа, не имеющего схемы (рис. 8.2).

    Рис. 8.2. Предупреждение Excel об отсутствии ссылок на схему

    Щелкнув кнопку ОК, вы увидите, какой способ Excel выбрал для представления информации в открываемом документе в виде электронной таблицы (рис. 8.3). Обратите внимание, что Excel ожидает встретить формат даты, который используется для элемента даты, поэтому даты, импортированные как 2003-10-05, будут отображаться как 10/5/2003.

    Рис. 8.3. Данные XML, представленные как XML-список в Excel

    Теперь, когда документ загружен в Excel, обрабатывать данные можно так же, как любые другие данные в Excel, — вставлять их в формулы, создавать именованные диапазоны, строить диаграммы на основе содержимого и т. д. Чтобы помочь вам, в Excel предусмотрено несколько встроенных возможностей анализа данных.

    Раскрывающиеся списки в заголовках столбцов позволяют выбирать способ сортировки данных (по умолчанию данные выводятся в том порядке, в котором они записаны в исходном документе). Можно также включить отображение строки итогов Итог (Total); для этого можно воспользоваться панелью инструментов Список (List) или щелкнуть правой кнопкой мыши в любом месте списка и в контекстном меню выбрать команду Список → Строка итогов (List → Total Row). Когда строка итогов появится, выбрать вид итоговой информации можно будет в раскрывающемся меню (рис. 8.4).

    Рис. 8.4. Выбор итогов для списка XML в Excel

    Данные можно обновить, добавив при этом в обновляемую область информацию из документа XML с такой же структурой. Если у вас есть еще один документ с такой структурой, можете щелкнуть список правой кнопкой мыши, в контекстном меню выбрать команду XML → Импорт (XML → Import) и выбрать второй документ. Кроме того, после редактирования данные можно экспортировать обратно в файл XML, щелкнув список правой кнопкой мыши и выбрав в контекстном меню команду XML → Экспорт (XML → Export). Это превращает Excel в очень удобный инструмент редактирования простых XML-документов с табличной структурой.

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

    // Листинг 8.2. Схема для данных о продаже книг

    Обратите внимание, что элемент date определен как дата, а элемент ISBN определен как строка, а не как целое число. Если вы начнете с открытия этой схемы, а не документа, то заставите Excel загружать документ, сохранив ведущий нуль в ISBN.

    На этот раз вы создадите список до загрузки документа XML, начав с пустого рабочего листа. Вам понадобится открыть область задач Источник XML (XML Source). Если она еще не открыта, нажмите сочетание клавиш Ctrl+Fl. Затем в раскрывающемся списке вверху области задач выберите Источник XML (XML Source) и вы увидите что-то похожее на рис. 8.6.

    Рис. 8.6. Область задач Источник XML

    Чтобы загрузить схему, щелкните кнопку Карты XML (XML Maps). Откроется диалоговое окно Карты XML (XML Maps) (рис. 8.7).

    Рис. 8.7. Диалоговое окно Карты XML

    Щелкните кнопку Добавить (Add), чтобы открыть схему, и выберите схему (рис. 8.8). Если схема не ограничивает документы одним начальным элементом, появится диалоговое окно с просьбой выбрать корневой элемент. Так как документы в этом примере начинаются с элемента sales, выберите «sales».

    Рис. 8.8. Выбор XML-схемы

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

    В диалоговом окне Карты XML (XML Maps) Excel сообщит, что схема была добавлена к электронной таблице. Если вы щелкнете кнопку ОК, то вернетесь в главное окно Excel и в области задач Источник XML (XML Source) появится диаграмма, отображающая структуру схемы. Теперь, когда у вас есть структура, можно создать список. Самый простой способ сделать это, особенно с небольшими документами, как наш, — перетащить значок sales на ячейку А1.

    Теперь, обустроив дом для данных, нужно заселить его. Можно щелкнуть кнопку Импорт XML-данных (Import XML Data) на панели инструментов Список (List) или щелкнуть правой кнопкой мыши список и в контекстном меню выбрать кнопку XML → Импорт (XML → Import). Если вы выберете файл, который уже открывали ранее (в листинге 8.1), то увидите результат, как на рис. 8.3. Обратите внимание на добавление ведущих нулей к значениям, которые теперь являются текстовыми, как и должно быть.

    Элементы можно перетаскивать и по отдельности, если вы хотите поменять их местами, или помещать разные фрагменты информации в разные места электронной таблицы.

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

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

    Источник: excel2010.ru