Използване на XML в Excel - Съвети за Excel

Всички казват, че XML е най-важната нова функция в Office 2003. Но освен ако случайно не сте в компания с тонове XML схеми, вероятно не сте успели да разберете как да дублирате тази готина демонстрация видях Microsoft да прави по време на стартирането на Office 2003. За тези от вас, които се абонират за бюлетина на Уди, сега осъзнавате, че Уди ще сериализира обяснението на XML, карайки ни да чакаме 4 седмици (или повече), за да разберем цялата история. Така че, преди Уди някога да стигне до въпроса, ще разгледам дълъг съвет, обясняващ как да използвам напълно XML в Office 2003.

Голямото обещание

Microsoft казва, че вече можете да съхранявате данни като XML и лесно да ги пренасочвате. Отворете същия файл с данни и той изглежда по един начин в Excel, отворете файла с данни и изглежда по друг начин в Word. Той е много мощен. Имаме и факта, че тъй като Office 2003 счита XML за естествен файлов формат, всеки с който и да е език за програмиране може да пише собствени XML файлове. Ако имате QBasic или Rexx или нещо друго, вече можете да създавате XML Excel (ExcelML?) Файлове в движение.

Само в Excel Professional

Сега сме изправени пред система от класове в Office 2003. Пълната поддръжка на XML не се предлага в тези издания: (Кодовете в курсив означават къде можете да закупите всеки: R = Retail, P = Preinstalled with new Computer, V = Volume-Licensing , A = Академично лицензиране, S = Училищни дистрибутори).

  • Microsoft Office Small Business Edition 2003 (R, P, V, A)
  • Microsoft Office Standard Edition 2003 (R, V, A, S)
  • Microsoft Office Basic Edition 2003 (P)
  • Microsoft Office Student and Teacher Edition 2003 (R, S)

Пълна поддръжка на XML е налична в следните издания:

  • Microsoft Office Professional Edition 2003 (R, P, V, A, S)
  • Microsoft Office Professional Enterprise Edition 2003 (включва InfoPath) (V)
  • Microsoft Excel 2003 (R) (Самостоятелното поле на Excel се счита за професионално)

Ако нямате късмет да имате една от „по-малките“ версии на Office 2003, най-евтиният ви път за надстройка може да бъде да закупите версията на Excel на дребно. Освен ако не работите в корпоративна среда, единственият начин да получите InfoPath (новият инструмент, който ви позволява да създавате формуляри и XML схеми) е да закупите версията на кутията за продажба на дребно.

Какво е XML? Като HTML ли е?

Примерни XML данни

XML означава Extensible markup language. Ако някога сте преглеждали изгледа „Преглед на източника“ на уеб страница в Notepad, вие сте запознати със структурата на XML. Докато HTML позволява определени маркери, като TABLE, BODY, TR, TD, XML позволява всякакви тагове. Можете да съставите всякакъв маркер, за да опишете вашите данни. Ето екранна снимка на някои XML данни, които въведох в бележника:

Ето няколко прости правила за XML:

  • Всеки бит данни трябва да започва и завършва с идентичен таг: Данни
  • Имената на маркерите са чувствителни към малки и големи букви. и НЕ са валидни маркери, тъй като изписването с главни букви в крайния таг не е същото като изписването с главни букви в началния маркер.
  • XML файлът трябва да започва и завършва с корен маркер. Във файл може да има само един корен маркер. В горния пример коренният таг е.
  • Можете да имате празен таг - поставете наклонената черта в края на маркера вместо в началото:
  • Ако влагате тагове, трябва да затворите вътрешния етикет, преди да затворите външния. Докато HTML позволява тази структура, щракнете върху Отказ, това не е валидно в XML. данните ще работят, но данните няма.

Азбучна супа: Три типа файлове

Ето трите файла, които ще срещнем при работа с XML.

  • .XML е файлът с данни, показан по-горе
  • .XSD е дефиниция на XML схема. Това е изключително важен файл. Взаимоотношенията с данни са дефинирани тук. Валидирането на данните е дефинирано и тук. За да направите демонстрацията на Microsoft, ви е необходим файл с XML схема. Въпреки че всеки може да напише XML в бележника, ние се нуждаем от схема, за да направим нещо страхотно. Ще ви покажа как да създадете такъв по-долу.
  • .XSL е файл с език XML StyleSheet - те ви позволяват да пренасочите данните от един формат в друг.

Досега най-голямото препятствие е как да създадете файла Schema. Можете да отворите XML файл в Excel, но не можете да правите трансформации без схема. За щастие Excel ще създаде схема по подразбиране за вас, но НЕ е очевидно как да използвате схемата. Да преминем през стъпалата.

  1. Отворете празен Notepad. Копирайте тези данни отдолу и ги поставете в Notepad. Запазете файла като test.xml.

     ABC Co 123 Main Salem OH 44460 12345 100 10.50 YXZ Co 234 State Akron OH 44313 23456 10 20.50 
  2. В Excel използвайте File - Open. Ако полето „Файлове от тип:“ е зададено на Всички файлове на Microsoft Excel, ще видите test.xml. Щракнете върху Отваряне.
  3. Първо ви се представя диалоговият прозорец Open XML. По-късно ще искаме да използваме мощния прозорец за задачи на XML Source, но не можем да го направим, докато не получим валидна схема. За момента изберете да отворите като XML списък.

    Отворете диалоговия прозорец XML
  4. След това - получаваме информационното поле, че XML няма схема. Това е фантастично послание - защото Microsoft сега ще създаде схема за вас в движение.

    Предупредително съобщение за схема
  5. Ето нашите данни в Excel. Това е доста готино. Те включват страхотната нова функция на списъка на Excel 2003 (обикновен пряк път: Ctrl + L). Когато функцията Списък е включена, имаме автофилтри във всяка колона и подобен на звездичка ред за добавяне на нови данни.

    XML данни в работен лист на Excel
  6. Сега - ето трикът без документи. Накрайник на гуруто на Excel XML на Microsoft Чад Ротшилер, който ни показа този страхотен трик. Стартирайте редактора на Visual Basic с Alt + F11. В редактора на Visual Basic натиснете Ctrl + G, за да отворите непосредствения прозорец. В непосредствения прозорец въведете:

    Print ActiveWorkbook.XmlMaps(1).Schemas(1).Xml
    Незабавен прозорец в VBE

    Помните ли съобщението в # 4? Microsoft предложи да изгради схема в движение за нас. Това малко код по-горе ще отпечата схемата. Щракнете върху Enter и схемата ще се отпечата в непосредствения прозорец.

    Схема в непосредствения прозорец

    Отворете празен бележник, копирайте данните от непосредствения прозорец и го поставете в празния бележник. Вече можете да видите пълната схема за нашия прост набор от данни.

    Запазване на файла на схемата

    Вече можете да запишете файла на бележника като TodaysOrders.xsd

  7. Върнете се в Excel и затворете тестовия набор от данни.
  8. От Excel отворете test.xml отново. Този път посочете, че искате да използвате прозореца на задачите XML Source и след това щракнете върху OK в полето за информация на схемата.

    Изберете Опция за отваряне на XML източник
  9. Вече получавате празен работен лист, но екранът XML Source вдясно изброява всички налични полета.

    Източник на XML
  10. Изберете падащото меню Опции и изберете Преглед на данни, за да видите извадка от всеки елемент в прозореца на задачите.

    Визуализация на данни в прозореца на задачите
  11. Добавете добре форматирано заглавие към празната си електронна таблица. Плъзнете елемента Поръчка за продажба и го пуснете в клетка B6.

    Плъзнете и пуснете елемент от данни
  12. Ако не виждате лентата с инструменти на списъка, изберете Преглед - Ленти с инструменти - Списък, за да се покаже лентата с инструменти.
  13. От лентата с инструменти изберете Refresh XML Data

    Бутон за обновяване на XML данни
  14. Примерните XML данни, които въведохме по-горе, се добавят към електронната таблица.

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

Ежедневно обновяване на данните

Ако можете да накарате вашата система да започне да изписва ежедневни поръчки всеки ден в Test.XML, значи сте готови. Отворете OrderReport.xls, опреснете XML данните и ще имате добре форматиран отчет за вашите XML поръчки всеки ден. Това е доста мощно - настройвам форматирането веднъж, отварям файла всеки ден, щраквам върху Refresh и имам добре форматиран отчет с данните от XML набора.

Ежедневно опресняване на XML данни

Използване на Excel за създаване на XML данни

Можем ли да използваме Excel за създаване на нови XML данни? Сега, когато имаме дефинирана схема, да, можем! Към съществуващата ни електронна таблица можем да накараме нашите телефонни поръчатели да добавят нови данни към файла на Excel през целия ден. В края на деня използвайте File - SaveAs. Изберете да запазите е като тип: XML данни.

Запазване като XML данни

Потвърдете коя карта да използвате:

Диалогов прозорец за експортиране на XML

Пренасочване на данните в Word

Сега, когато създадохме схема и данни, нека отворим данните в Microsoft Word 2003. След отваряне на TestAsData.xml в Word 2003 получаваме изгледа с данни по подразбиране в Word.

Отворете XML файл с данни в Microsoft Word

Можете да форматирате този документ:

Форматиране на документ

Натиснете Ctrl + Shift + X, за да изключите полетата:

Изключете XML полетата в Word

Използване на XSL изгледи за пренасочване на данни

Горният пример с използване на Drag and Drop всъщност не създава трансформация. Ако създадете файлове за преобразуване, можете лесно да трансформирате XML данните в различни изгледи в Word. Тук идва истинската мощ. Преди да ви покажа как да създадете своя собствена трансформация, нека да разгледаме как Microsoft е настроил демонстрацията в разпространението на Office 2003.

За да опитате това на вашето копие на Word 2003, изтеглете XML Sample Package. Zip файлът съдържа:

  • Един XML файл: SampleMemo.xml
  • Една схема: Memo.xsd
  • Три файла за преобразуване: elegant.xsl, professional.xsl, modern.xsl

Следвай тези стъпки:

  1. Стартирайте Word 2003
  2. От менюто изберете Инструменти - Шаблони и добавки …

    Шаблони и добавки
  3. Щракнете върху раздела XML Schema и изберете Add Schema …

    Раздел XML Schema
  4. Придвижете се до мястото, където сте разархивирали примерните файлове. Изберете Memo.xsd и щракнете върху Отвори.

    Избиране на XSD файл за добавяне на схема
  5. В диалоговия прозорец Настройки на схемата дайте на схемата приятелско име в полето Псевдоним. Може би нещо като „Бележка“. Щракнете върху OK.

    Добавете псевдоним към схемата

    Към този момент Word вече е наясно със схемата за бележки. След това трябва да информираме Word 2003 за трансформациите. Имайте предвид, че Microsoft нарича тези "решения".

  6. Все още трябва да сте в диалоговия прозорец Шаблони и добавки. Щракнете върху Библиотека на схеми …

    Библиотека на схеми
  7. В диалоговия прозорец Библиотека на схеми изберете Бележка в горното списъчно поле. Това ще активира бутона в долната част на диалоговия прозорец за „Добавяне на решение …“.
  8. Щракнете върху бутона Добавяне на решение.

    Добавяне на решение
  9. Придвижете се до папката с вашите .xsl файлове. Изберете Contemporary.xsl и щракнете върху Отвори.

    Изберете Преобразуване на файл
  10. В диалоговия прозорец Настройки на решението дайте на файла за преобразуване приятелско име, като например „Съвременно“. Щракнете върху OK.

    Псевдоним за файла за преобразуване
  11. Повторете стъпки от 8 до 10, за да добавите Elegant.xsl и Professional.xsl. Щракнете върху OK, за да затворите библиотеката на схемата. Щракнете върху OK, за да затворите шаблони и добавки.

    Финализиране на библиотеката на схемите

    В демонстрацията на Microsoft всички тези 11 стъпки бяха направени зад кулисите. Публиката влезе и ние наблюдавахме как ни показват тези стъпки.

  12. Ще отворим SampleMemo.xml в Word. Ето изгледа на бележника на този файл. Това са обикновени XML данни без никакво форматиране.

    Примерно съдържание на XML файл с данни
  13. От Word отворете SampleMemo.xml. Зад кулисите Microsoft сканира XML файла, за да установи, че това са данни, използвайки схемата Memo. Изглежда в библиотеката на схемите, за да види дали има съвпадение в схемата "memo". Когато има, той намира всички XSL решения, които сме добавили. Тъй като имаме три, Word избира един за показване, след което ни предлага останалите в прозореца на задачите на XML Document. Това е много невероятно.

    Ето панела за изгледи на XML данни:

    XML панел за изгледи на данни

    Ето изгледа по подразбиране на данните (това използва Elegant xsl).

    Изглед по подразбиране на данните

    Кликнете върху Само данни и получавате само данните без форматиране.

    Изглед само за данни

    Щракнете върху Contemporary и няколко секунди по-късно имате напълно различен форматиран изглед на данните:

    Форматиран изглед на данните
  14. Можете да покажете / скриете лилавите XML тагове с Ctrl + Shift + X.

    Показване / скриване на XML тагове

Създаване на ваши собствени XSL трансформиращи се файлове

Виждам силата. Но досега използвахме изтеглени XSL файлове само за чужди данни. Наистина се нуждаем от начин да създадем XSL файл за нашите собствени данни. Отново, ако работите за компания, която е богата на XML, вероятно някой вече е настроил тези трансформи. Ако обаче вие ​​сте първият човек във вашата компания, който изпробва XML неща, тогава трябва да преминете през относително болезнената задача да настроите собствените си файлове за преобразуване.

Ето как ще направим това. Първо, ще създам фантастичен документ в Word, който показва как искам да покажа XML данните. Ще въведа лесни за намиране заместители, където искам да отидат XML полетата. Ще запазя този документ като Word XML. След това, използвайки Notepad, ще редактирам документа, ще поставя някакъв XSL код и ще запазя файла. Това трябва да създаде персонализиран XSL трансформиращ файл.

  1. В Word създайте добре форматирана проба. По-долу съм изградил потвърждение на поръчката. Това има лого, уводен текст, полетата от XML файла и затварящ текст. Използвал съм различни шрифтове и цветове. Конвенцията за използване на *** за маркиране на полетата е просто да ми помогне, докато преглеждам Word XML файла в Notepad.

    Шаблон в Word
  2. Ще запазя този файл като Word XML.

    Запазване като Word XML
  3. Ще отворя два прозореца на бележника. Единият има Sales Order.xml, а другият има съществуващ код за трансформация elegant.xsl. (следва продължение).

Интересни статии...