To import and export XML data in Excel, an XML Map that associates XML elements with data in cells to get the results you want will be useful. To create one, you need to have an XML schema file (.xsd) and an XML data file (.xml). After creating the XML Map, you can map XML elements the way you want.
Συμβουλή: You'll find more information about using XML with Excel in this overview of XML in Excel.
Locate or create XML schema and XML data files
If another database or application created an XML schema or XML data file, you might already have them available. For example, you might have a line-of-business application that exports data into these XML file formats, a commercial web site or web service that supplies these XML files, or a custom application developed by your IT department that automatically creates these XML files.
If you don’t have the necessary XML files, you can create them by saving the data you want to use as a text file. You can then use both Access and Excel to convert that text file to the XML files you need. Here’s how:
Πρόσβαση
-
Import the text file you want to convert and link it to a new table.
-
Επιλέξτε Αρχείο > Άνοιγμα.
-
In the Open dialog box, select and open the database in which you want to create a new table.
-
Click External Data > Text File, and follow the instructions for each step, making sure that you link the table to the text file.
Η Access δημιουργεί το νέο πίνακα και τον εμφανίζει στο παράθυρο περιήγησης.
-
-
Εξαγάγετε τα δεδομένα από τον συνδεδεμένο πίνακα σε ένα αρχείο δεδομένων XML και ένα αρχείο σχήματος XML.
-
Click External Data > XML File (in the Export group).
-
In the Export - XML File dialog box, specify the file name and format, and click OK.
-
-
Κλείστε την Access.
Excel
-
Create an XML Map based on the XML schema file you exported from Access.
If the Multiple Roots dialog box appears, make sure you choose dataroot so you can create an XML table.
-
Create an XML table by mapping the dataroot element. See Map XML elements for more information.
-
Import the XML file you exported from Access.
Σημειώσεις:
-
There are several types of XML schema element constructs Excel doesn't support. The following XML schema element constructs can't be imported into Excel:
-
<> Αυτό το στοιχείο σας επιτρέπει να συμπεριλάβετε στοιχεία που δεν έχουν δηλωθεί από το σχήμα.
-
<anyAttribute> Αυτό το στοιχείο σας επιτρέπει να συμπεριλάβετε χαρακτηριστικά που δεν έχουν δηλωθεί από το σχήμα.
-
Recursive structures A common example of a recursive structure is a hierarchy of employees and managers in which the same XML elements are nested several levels. Excel doesn't support recursive structures more than one level deep.
-
Στοιχεία αποσπάσματος Αυτά τα στοιχεία προορίζονται να δηλωθούν στο σχήμα, αλλά δεν έχουν χρησιμοποιηθεί ποτέ ως στοιχεία. Τα στοιχεία αποσπάσματος εξαρτώνται από άλλα στοιχεία που υποκαθίστανται από τα στοιχεία αποσπάσματος.
-
Ομάδες υποκατάστασης Αυτές οι ομάδες επιτρέπουν την εναλλαγή ενός στοιχείου κάθε φορά που αναφέρεται ένα άλλο στοιχείο. Ένα στοιχείο υποδεικνύει ότι είναι μέλος της ομάδας υποκατάστασης ενός άλλου στοιχείου μέσω του χαρακτηριστικού <substitutionGroup>.
-
Μεικτό περιεχόμενο Αυτό το περιεχόμενο δηλώνεται χρησιμοποιώντας την τιμή mixed="true" σε έναν ορισμό σύνθετου τύπου. Το Excel δεν υποστηρίζει το απλό περιεχόμενο του σύνθετου τύπου αλλά υποστηρίζει τις θυγατρικές ετικέτες και χαρακτηριστικά που ορίζονται στον συγκεκριμένο σύνθετο τύπο.
Use sample XML schema and XML data files
The following sample data has basic XML elements and structures you can use to test XML mapping if you don't have XML files or text files to create the XML files. Here’s how you can save this sample data to files on your computer:
-
Select the sample text of the file you want to copy, and press Ctrl+C.
-
Start Notepad, and press Ctrl+V to paste the sample text.
-
Press Ctrl+S to save the file with the file name and extension of the sample data you copied.
-
Press Ctrl+N in Notepad and repeat step 1-3 to create a file for the second sample text.
-
Κλείστε το Σημειωματάριο.
Δείγμα δεδομένων XML (Δαπάνες.xml)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Root>
<EmployeeInfo>
<Name>Jane Winston</Name>
<Date>2001-01-01</Date>
<Code>0001</Code>
</EmployeeInfo>
<ExpenseItem>
<Date>2001-01-01</Date>
<Description>Airfare</Description>
<Amount>500.34</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-01</Date>
<Description>Hotel</Description>
<Amount>200</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-01</Date>
<Description>Taxi Fare</Description>
<Amount>100.00</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-01</Date>
<Description>Long Distance Phone Charges</Description>
<Amount>57.89</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-01</Date>
<Description>Food</Description>
<Amount>82.19</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-02</Date>
<Description>Food</Description>
<Amount>17.89</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-02</Date>
<Description>Personal Items</Description>
<Amount>32.54</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-03</Date>
<Description>Taxi Fare</Description>
<Amount>75.00</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-03</Date>
<Description>Food</Description>
<Amount>36.45</Amount>
</ExpenseItem>
<ExpenseItem>
<Date>2001-01-03</Date>
<Description>New Suit</Description>
<Amount>750.00</Amount>
</ExpenseItem>
</Root>
Δείγμα σχήματος XML (Δαπάνες.xsd)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="Root">
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="EmployeeInfo">
<xsd:complexType>
<xsd:all>
<xsd:element minOccurs="0" maxOccurs="1" name="Name" />
<xsd:element minOccurs="0" maxOccurs="1" name="Date" />
<xsd:element minOccurs="0" maxOccurs="1" name="Code" />
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="ExpenseItem">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Date" type="xsd:date"/>
<xsd:element name="Description" type="xsd:string"/>
<xsd:element name="Amount" type="xsd:decimal" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
Δημιουργία αντιστοίχισης XML
You create an XML Map by adding an XML schema to a workbook. The schema can be copied from an XML schema file (.xsd), or Excel can try to infer one from an XML data file (.xml).
-
Click Developer > Source.
Αν δεν βλέπετε την καρτέλα Προγραμματιστής, ανατρέξτε στο θέμα Εμφάνιση της καρτέλας "Προγραμματιστής.
-
In the XML Source task pane, click XML Maps, and then click Add.
-
Στη λίστα Διερεύνηση σε, κάντε κλικ στη μονάδα δίσκου, στο φάκελο ή στη θέση Internet που περιέχει το αρχείο που θέλετε να ανοίξετε.
-
Κάντε κλικ στο αρχείο και επιλέξτε Άνοιγμα.
-
For an XML schema file, XML will create an XML Map based on the XML schema. If the Multiple Roots dialog box appears, choose one of the root nodes defined in the XML schema file.
-
For an XML data file, Excel will try to infer the XML schema from the XML data, and then creates an XML Map.
-
-
Κάντε κλικ στο κουμπί OK.
The XML Map appears in the XML Source task pane.
Αντιστοίχιση στοιχείων XML
Μπορείτε να αντιστοιχίσετε στοιχεία XML σε κελιά μονής αντιστοίχισης και επαναλαμβανόμενα κελιά σε πίνακες XML, έτσι ώστε να μπορείτε να δημιουργήσετε μια σχέση μεταξύ του κελιών και του στοιχείου δεδομένων XML στο σχήμα XML.
-
Click Developer > Source.
Αν δεν βλέπετε την καρτέλα Προγραμματιστής, ανατρέξτε στο θέμα Εμφάνιση της καρτέλας "Προγραμματιστής.
-
In the XML Source task pane, select the elements you want to map.
To select nonadjacent elements, click one element, and then hold down Ctrl and click each element you want to map.
-
Για να αντιστοιχίσετε τα στοιχεία, κάντε τα εξής:
-
Right-click the selected elements, and click Map element.
-
In the Map XML elements dialog box, select a cell and click OK.
Συμβουλή: Επίσης, μπορείτε να μεταφέρετε τα επιλεγμένα στοιχεία στη θέση του φύλλου εργασίας όπου θέλετε να εμφανίζονται.
Κάθε στοιχείο εμφανίζεται με έντονη γραφή στο παράθυρο εργασιών Προέλευση XML, υποδεικνύοντας ότι το στοιχείο έχει αντιστοιχιστεί.
-
-
Αποφασίστε πώς θέλετε να χειριστείτε τις ετικέτες και τις επικεφαλίδες στηλών:
-
Όταν σύρετε ένα μη επαναλαμβανόμενο στοιχείο XML σε ένα φύλλο εργασίας για να δημιουργήσετε ένα κελί μονής αντιστοίχισης, εμφανίζεται μια έξυπνη ετικέτα με τρεις εντολές που μπορείτε να χρησιμοποιήσετε για να ελέγξετε την τοποθέτηση της επικεφαλίδας ή της ετικέτας:
Τα δεδομένα μου περιέχουν ήδη επικεφαλίδα Κάντε κλικ σε αυτήν την επιλογή για να παραβλέψετε την επικεφαλίδα του στοιχείου XML, επειδή το κελί έχει ήδη μια επικεφαλίδα (αριστερά ή επάνω από τα δεδομένα).
Τοποθέτηση της επικεφαλίδας XML στα αριστερά Κάντε κλικ σε αυτήν την επιλογή για να χρησιμοποιήσετε την επικεφαλίδα του στοιχείου XML ως ετικέτα του κελιού (αριστερά από τα δεδομένα).
Τοποθέτηση της επικεφαλίδας XML επάνω Κάντε κλικ σε αυτήν την επιλογή για να χρησιμοποιήσετε την επικεφαλίδα του στοιχείου XML ως επικεφαλίδα του κελιού (επάνω από τα δεδομένα).
-
Όταν σύρετε ένα επαναλαμβανόμενο στοιχείο XML στο φύλλο εργασίας για να δημιουργήσετε επαναλαμβανόμενα κελιά σε έναν πίνακα XML, τα ονόματα των στοιχείων XML χρησιμοποιούνται αυτόματα ως επικεφαλίδες στήλης για τον πίνακα. Ωστόσο, μπορείτε να αλλάξετε τις επικεφαλίδες στήλης σε οποιεσδήποτε επικεφαλίδες θέλετε, με την επεξεργασία των κελιών της κεφαλίδας στήλης.
Στο παράθυρο εργασιών Προέλευση XML, μπορείτε να κάνετε κλικ στο στοιχείο Επιλογές για περαιτέρω έλεγχο της συμπεριφοράς του πίνακα XML:
Αυτόματη συγχώνευση στοιχείων κατά την αντιστοίχιση Όταν είναι επιλεγμένο αυτό το πλαίσιο ελέγχου, οι πίνακες XML αναπτύσσονται αυτόματα όταν σύρετε ένα στοιχείο σε ένα γειτονικό κελί στον πίνακα XML.
Τα δεδομένα μου έχουν επικεφαλίδες Όταν είναι επιλεγμένο αυτό το πλαίσιο ελέγχου, τα υπάρχοντα δεδομένα μπορούν να χρησιμοποιηθούν ως επικεφαλίδες στήλης όταν αντιστοιχίζετε επαναλαμβανόμενα στοιχεία στο φύλλο εργασίας σας.
Σημειώσεις:
-
If all XML commands are dimmed, and you can't map XML elements to any cells, the workbook might be shared. Click Review > Share Workbook to verify that and to remove it from shared use as needed.
If you want to map XML elements in a workbook you want to share, map the XML elements to the cells you want, import the XML data, remove all of the XML maps, and then share the workbook.
-
If you can't copy an XML table that contains data to another workbook, the XML table might have an associated XML Map that defines the data structure. This XML Map is stored in the workbook, but when you copy the XML table to a new workbook, the XML Map isn't automatically included. Instead of copying the XML table, Excel creates an Excel table that contains the same data. If you want the new table to be an XML table, do the following:
-
Add an XML Map to the new workbook by using the .xml or .xsd file you used to create the original XML Map. You should save these files if you want to add XML Maps to other workbooks.
-
Αντιστοιχίστε τα στοιχεία XML στον πίνακα, για να τον μετατρέψετε σε πίνακα XML.
-
-
When you map a repeating XML element to a merged cell, Excel unmerges the cell. This is expected behavior, because repeating elements are designed to work with unmerged cells only.
You can map single, nonrepeating XML elements to a merged cell, but mapping a repeating XML element (or an element that contains a repeating element) to a merged cell isn't allowed. The cell will be unmerged, and the element will be mapped to the cell where the pointer is located.
-
-
Συμβουλές:
-
Μπορείτε να καταργήσετε την αντιστοίχιση στοιχείων XML που δεν θέλετε να χρησιμοποιήσετε ή να αποτρέψετε την αντικατάσταση των περιεχομένων των κελιών κατά την εισαγωγή δεδομένων XML. For example, you could temporarily unmap an XML element from a single cell or repeating cells that have formulas you don't want to overwrite when you import an XML file. Όταν ολοκληρωθεί η εισαγωγή, μπορείτε να αντιστοιχίσετε ξανά το στοιχείο XML στα κελιά του τύπου, ώστε να μπορείτε να εξαγάγετε τα αποτελέσματα των τύπων στο αρχείο δεδομένων XML.
-
To unmap XML elements, right-click their name in the XML Source task pane, and click Remove element.
Εμφάνιση της καρτέλας "Προγραμματιστής"
Εάν δεν βλέπετε την καρτέλα Προγραμματιστής, κάντε τα εξής για να την εμφανίσετε:
-
Κάντε κλικ στο στοιχείο Αρχείο > Επιλογές.
-
Κάντε κλικ στην κατηγορία Προσαρμογή κορδέλας.
-
Under Main Tabs, check the Developer box, and click OK.
Δείτε επίσης
Διαγραφή πληροφοριών αντιστοίχισης XML από βιβλίο εργασίας