Utilizzo di XML in Excel - Suggerimenti per Excel

Tutti dicono che XML è la nuova funzionalità più importante di Office 2003. Ma, a meno che non ti trovi in ​​un'azienda con tonnellate di schemi XML in giro, probabilmente non sei stato in grado di capire come duplicare quella fantastica demo che hai ha visto fare Microsoft durante il lancio di Office 2003. Per quelli di voi che si iscrivono alla newsletter di Woody, ora si rendono conto che Woody serializzerà la spiegazione di XML, facendoci aspettare 4 settimane (o più) per ottenere l'intera storia. Quindi, prima che Woody possa arrivare al punto, esaminerò un lungo suggerimento che spiega come utilizzare appieno XML in Office 2003.

La grande promessa

Microsoft afferma che ora è possibile archiviare i dati come XML e riutilizzarli facilmente. Apri lo stesso file di dati e ha un aspetto in Excel, apri il file di dati e ha un altro aspetto in Word. È molto potente. Abbiamo anche il fatto che, poiché Office 2003 considera XML come un formato di file nativo, chiunque abbia qualsiasi linguaggio di programmazione può scrivere file XML nativi. Se hai QBasic o Rexx o altro, ora puoi creare file XML Excel (ExcelML?) Al volo.

Solo in Excel Professional

Ora ci troviamo di fronte a un sistema di classi in Office 2003. Il supporto XML completo non è disponibile in queste edizioni: (i codici in corsivo indicano dove è possibile acquistarli: R = Retail, P = Preinstalled with new Computer, V = Volume-Licensing , A = Licenza accademica, S = Rivenditori scolastici).

  • 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)

Il supporto XML completo è disponibile in queste edizioni:

  • Microsoft Office Professional Edition 2003 (R, P, V, A, S)
  • Microsoft Office Professional Enterprise Edition 2003 (include InfoPath) (V)
  • Microsoft Excel 2003 (R) (la casella Excel autonoma è considerata professionale)

Se sei così sfortunato da avere una delle versioni "minori" di Office 2003, il percorso di aggiornamento più economico potrebbe essere l'acquisto della versione in scatola di vendita di Excel. A meno che non si lavori in un ambiente aziendale, l'unico modo per ottenere InfoPath (il nuovo strumento che consente di creare moduli e schemi XML) è acquistare la versione in scatola al dettaglio.

Cos'è l'XML? È come l'HTML?

Dati XML di esempio

XML sta per Extensible markup language. Se hai mai guardato la vista "Visualizza sorgente" di una pagina web in Blocco note, hai familiarità con la struttura di XML. Mentre l'HTML consente alcuni tag, come TABLE, BODY, TR, TD, XML consente qualsiasi tag. Puoi creare qualsiasi tipo di tag per descrivere i tuoi dati. Ecco uno screenshot di alcuni dati XML che ho digitato nel blocco note:

Ecco alcune semplici regole su XML:

  • Ogni bit di dati deve iniziare e finire con un tag identico: Data
  • I nomi dei tag fanno distinzione tra maiuscole e minuscole. e NON sono tag validi perché le maiuscole nel tag di fine non sono le stesse del tag di inizio.
  • Il file XML deve iniziare e terminare con un tag radice. Può esserci solo un tag radice in un file. Nell'esempio sopra, il tag radice è.
  • Puoi avere un tag vuoto: inserisci la barra alla fine del tag anziché all'inizio:
  • Se nidifichi i tag, devi chiudere il tag interno prima di chiudere il tag esterno. Sebbene HTML consentirà questa struttura, fare clic su Annulla, ciò non è valido in XML. i dati funzioneranno, ma i dati no.

Zuppa di alfabeto: tre tipi di file

Ecco i tre file che incontreremo quando lavoreremo con XML.

  • .XML è il file di dati mostrato sopra
  • .XSD è una definizione di XML Schema. Questo è un file importantissimo. Le relazioni tra i dati vengono definite qui. Anche la convalida dei dati è definita qui. Per eseguire effettivamente la demo Microsoft, è necessario un file XML Schema. Sebbene chiunque possa digitare XML nel blocco note, abbiamo bisogno di uno schema per fare qualcosa di interessante. Ti mostrerò come crearne uno di seguito.
  • .XSL è un file XML StyleSheet Language, che ti consente di riutilizzare i dati da un formato all'altro.

Di gran lunga, l'ostacolo più grande è come creare il file Schema. È possibile aprire un file XML in Excel ma non è possibile eseguire trasformazioni senza uno schema. Fortunatamente, Excel creerà uno schema predefinito per te, ma NON è ovvio come utilizzare lo schema. Esaminiamo i passaggi.

  1. Apri un blocco note vuoto. Copia questi dati dal basso e incollali nel Blocco note. Salva il file come 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. In Excel, usa File - Apri. Se la casella "Tipo di file:" è impostata su Tutti i file di Microsoft Excel, verrà visualizzato test.xml. Fare clic su Apri.
  3. Viene prima presentata la finestra di dialogo Apri XML. Successivamente, vorremo utilizzare il potente riquadro attività XML Source, ma non possiamo farlo finché non avremo uno schema valido. Per ora, scegli di aprire come elenco XML.

    Apri finestra di dialogo XML
  4. Successivamente, otteniamo la casella delle informazioni che l'XML non ha uno schema. Questo è un messaggio fantastico, perché Microsoft ora creerà uno schema per te al volo.

    Messaggio di avviso dello schema
  5. Ecco i nostri dati in Excel. È piuttosto interessante. Attivano la nuova fantastica funzionalità Elenco di Excel 2003 (scorciatoia normale: Ctrl + L). Con la funzione Elenco attivata, abbiamo filtri automatici su ogni colonna e una riga asterisco simile ad Access per l'aggiunta di nuovi dati.

    Dati XML nel foglio di lavoro Excel
  6. Ora, ecco il trucco non documentato. Una punta di cappello al guru di Microsoft Excel XML Chad Rothschiller per averci mostrato questo fantastico trucco. Avvia Visual Basic Editor con Alt + F11. In Visual Basic Editor, premi Ctrl + G per aprire il riquadro immediato. Nel riquadro immediato, digita:

    Print ActiveWorkbook.XmlMaps(1).Schemas(1).Xml
    Finestra immediata in VBE

    Ricordi il messaggio al n. 4? Microsoft si è offerta di creare uno schema al volo per noi. Questo pezzetto di codice sopra stamperà lo schema. Fare clic su Invio e lo schema verrà stampato nel riquadro immediato.

    Schema nel riquadro immediato

    Apri un blocco note vuoto, copia i dati dalla finestra immediata e incollali nel blocco note vuoto. Ora puoi vedere lo schema completo per il nostro semplice set di dati.

    Salva file schema

    È ora possibile salvare il file del blocco note come TodaysOrders.xsd

  7. Torna a Excel e chiudi il set di dati di prova.
  8. Da Excel, apri nuovamente test.xml. Questa volta, indicare che si desidera utilizzare il riquadro attività XML Source e quindi fare clic su OK nella casella delle informazioni sullo schema.

    Scegli l'opzione di apertura dell'origine XML
  9. Ora ottieni un foglio di lavoro vuoto, ma il riquadro XML Source sulla destra elenca tutti i campi disponibili.

    Riquadro origine XML
  10. Scegli il menu a discesa Opzioni e seleziona Anteprima dati per vedere un esempio di ogni elemento nel riquadro delle attività.

    Anteprima dei dati nel Task Pane
  11. Aggiungi un titolo ben formattato al tuo foglio di lavoro vuoto. Trascina l'elemento Ordine di vendita e rilascialo nella cella B6.

    Trascina e rilascia elemento dati
  12. Se non vedi la barra degli strumenti dell'elenco, scegli Visualizza - Barre degli strumenti - Elenco per mostrare la barra degli strumenti.
  13. Dalla barra degli strumenti, seleziona Aggiorna dati XML

    Pulsante Aggiorna dati XML
  14. I dati XML di esempio che abbiamo digitato sopra vengono aggiunti al foglio di calcolo.

    Risultato dati XML nel foglio di lavoro
  15. Salva la cartella di lavoro come un normale file Excel, magari chiamato OrderReport.xls

Aggiornamento quotidiano dei dati

Se riesci a far sì che il tuo sistema inizi a scrivere ordini giornalieri ogni giorno su Test.XML, allora sei pronto. Apri OrderReport.xls, aggiorna i dati XML e avrai un rapporto ben formattato dei tuoi ordini XML ogni giorno. Questo è piuttosto potente: ho impostato la formattazione una volta, apro il file ogni giorno, faccio clic su Aggiorna e ho un rapporto ben formattato con i dati del set XML.

Aggiorna quotidianamente i dati XML

Utilizzo di Excel per creare dati XML

Possiamo usare Excel per creare nuovi dati XML? Ora che abbiamo definito uno schema, sì, possiamo! Al nostro foglio di calcolo esistente, possiamo chiedere ai nostri responsabili degli ordini telefonici di aggiungere nuovi dati al file Excel durante il giorno. Alla fine della giornata, usa File - SaveAs. Scegliere di salvare è come tipo: Dati XML.

Salva come dati XML

Conferma quale mappa utilizzare:

Finestra di dialogo Esporta XML

Riproporre i dati in Word

Ora che abbiamo creato uno schema e dei dati, apriamo i dati in Microsoft Word 2003. Dopo aver aperto TestAsData.xml in Word 2003, otteniamo la visualizzazione dati predefinita in Word.

Apri file dati XML in Microsoft Word

Puoi formattare questo documento:

Formato documento

Premi Ctrl + Maiusc + X per disattivare i campi:

Disattiva i campi XML in Word

Utilizzo delle viste XSL per riutilizzare i dati

L'esempio precedente utilizzando Drag and Drop non crea effettivamente una trasformazione. Se crei file Transform, puoi trasformare facilmente i dati XML in diverse visualizzazioni in Word. È qui che entra in gioco il vero potere. Prima di mostrarti come creare la tua trasformazione, esaminiamo come Microsoft ha impostato la demo nel lancio di Office 2003.

Per provarlo sulla tua copia di Word 2003, scarica XML Sample Package. Il file zip contiene:

  • Un file XML: SampleMemo.xml
  • Uno schema: Memo.xsd
  • Tre file di trasformazione: elegant.xsl, professional.xsl, contemporary.xsl

Segui questi passi:

  1. Avvia Word 2003
  2. Dal menu, seleziona Strumenti - Modelli e componenti aggiuntivi …

    Modelli e componenti aggiuntivi
  3. Fare clic sulla scheda Schema XML e selezionare Aggiungi schema …

    Scheda Schema XML
  4. Vai al punto in cui hai decompresso i file di esempio. Seleziona Memo.xsd e fai clic su Apri.

    Selezione del file XSD per aggiungere uno schema
  5. Nella finestra di dialogo Impostazioni schema, assegna allo schema un nome descrittivo nella casella Alias. Forse qualcosa come "Memo". Fare clic su OK.

    Aggiungi un alias allo schema

    A questo punto, Word è ora a conoscenza dello schema del memo. Quindi dobbiamo rendere Word 2003 consapevole delle trasformazioni. Notare che Microsoft chiama queste "soluzioni".

  6. Dovresti ancora essere nella finestra di dialogo Modelli e componenti aggiuntivi. Fai clic su Libreria di schemi …

    Libreria di schemi
  7. Nella finestra di dialogo Libreria di schemi, seleziona Memo nella casella di riepilogo in alto. Ciò abiliterà il pulsante nella parte inferiore della finestra di dialogo per "Aggiungi soluzione …".
  8. Fare clic sul pulsante Aggiungi soluzione.

    Aggiunta di soluzione
  9. Vai alla cartella con i tuoi file .xsl. Scegli Contemporary.xsl e fai clic su Apri.

    Seleziona Trasforma file
  10. Nella finestra di dialogo Impostazioni soluzione, assegnare al file di trasformazione un nome descrittivo, ad esempio "Contemporaneo". Fare clic su OK.

    Alias ​​per il file di trasformazione
  11. Ripetere i passaggi da 8 a 10 per aggiungere Elegant.xsl e Professional.xsl. Fare clic su OK per chiudere la libreria degli schemi. Fare clic su OK per chiudere modelli e componenti aggiuntivi.

    Finalizza la libreria di schemi

    Alla demo di Microsoft, tutti questi 11 passaggi sono stati eseguiti dietro le quinte. Il pubblico è entrato e abbiamo guardato mentre ci mostravano questi passaggi.

  12. Stiamo per aprire SampleMemo.xml in Word. Ecco la visualizzazione del blocco note di questo file. Sono semplici dati XML senza alcuna formattazione.

    Contenuto del file di dati XML di esempio
  13. Da Word, apri SampleMemo.xml. Dietro le quinte, Microsoft esegue la scansione del file XML per scoprire che si tratta di dati utilizzando lo schema Memo. Cerca nella libreria degli schemi per vedere se c'è una corrispondenza nello schema "memo". Quando c'è, trova tutte le soluzioni XSL che abbiamo aggiunto. Poiché ne abbiamo tre, Word ne seleziona uno da visualizzare, quindi ci offre gli altri nel riquadro attività Documento XML. Questo è davvero sorprendente.

    Ecco il riquadro delle visualizzazioni dati XML:

    Riquadro visualizzazioni dati XML

    Ecco la visualizzazione predefinita dei dati (utilizza Elegant xsl).

    Visualizzazione predefinita dei dati

    Fare clic su Solo dati e si ottengono solo i dati senza formattazione.

    Visualizzazione solo dati

    Fare clic su Contemporaneo e, pochi secondi dopo, si ha una visualizzazione formattata completamente diversa dei dati:

    Visualizzazione formattata dei dati
  14. Puoi mostrare / nascondere i tag XML viola con Ctrl + Maiusc + X.

    Mostra / Nascondi tag XML

Creazione di file di trasformazione XSL personalizzati

Posso vedere il potere. Ma finora, abbiamo utilizzato solo file XSL scaricati per i dati di qualcun altro. Abbiamo davvero bisogno di un modo per creare un file XSL per i nostri dati. Di nuovo, se lavori per un'azienda ricca di XML, probabilmente qualcuno ha già impostato queste trasformazioni. Tuttavia, se sei la prima persona nella tua azienda a provare il materiale XML, devi affrontare il compito relativamente doloroso di impostare i tuoi file di trasformazione.

Ecco come lo faremo. Per prima cosa, creerò un documento di fantasia in Word che mostra come voglio visualizzare i dati XML. Inserirò segnaposto facili da trovare dove voglio che vadano i campi XML. Salverò questo documento come Word XML. Quindi, utilizzando Blocco note, modifico il documento, incollo del codice XSL e salverò il file. Questo dovrebbe creare un file di trasformazione XSL personalizzato.

  1. In Word, crea un esempio ben formattato. Di seguito, ho creato una conferma dell'ordine. Questo ha un logo, un testo introduttivo, i campi del file XML e il testo di chiusura. Ho usato vari tipi di carattere e colori. La convenzione di utilizzare *** per evidenziare i campi è semplicemente per aiutarmi mentre guardo il file XML di Word in Blocco note.

    Modello in Word
  2. Salverò questo file come Word XML.

    Salvataggio come Word XML
  3. Aprirò due finestre del blocco note. Uno ha Sales Order.xml e l'altro ha un codice di trasformazione elegant.xsl esistente. (continua).

Articoli interessanti...