Als u XML-gegevens wilt importeren en exporteren in Excel, moet u een XML-toewijzing maken die XML-elementen koppelt aan cellen om zo het gewenste resultaat te verkrijgen. Deze toewijzing kunt u alleen maken als u beschikt over een XML-schemabestand (.xsd) en een XML-gegevensbestand (.xml). Nadat u de XML-toewijzing hebt gemaakt, kunt u XML-elementen op de gewenste manier toewijzen.
Tip: Raadpleeg dit overzicht van XML in Excel voor meer informatie over het gebruik van XML met Excel.
XML-schema- en XML-gegevensbestanden vinden of maken
Als in een andere database of toepassing een XML-schema of een XML-gegevensbestand is gemaakt, kunt u deze bestanden misschien gebruiken. Zo is het mogelijk dat een branchespecifieke toepassing gegevens kan exporteren in de XML-bestandsindeling, dat een commerciële website of webservice XML-bestanden ondersteunt of dat een maatwerktoepassing die door uw IT-afdeling is ontwikkeld, een XML-bestand kan maken.
Als u niet beschikt over de benodigde XML-bestanden, kunt u deze maken door de gegevens die u wilt gebruiken als een tekstbestand op te slaan. Vervolgens kunt u dat tekstbestand via Access en Excel converteren naar de benodigde XML-bestanden. Dit doet u als volgt:
Access
-
Importeer het tekstbestand dat u wilt converteren en koppel het bestand aan een nieuwe tabel.
-
Klik op Bestand > Openen.
-
Selecteer en open in het dialoogvenster Openen de database waarin u een nieuwe tabel wilt maken.
-
Klik op Externe gegevens > Tekstbestand en volg de instructies voor elke stap om de tabel aan het tekstbestand te koppelen.
In Access wordt de nieuwe tabel gemaakt en weergegeven in het navigatiedeelvenster.
-
-
Exporteer de gegevens uit de gekoppelde tabel naar een XML-gegevensbestand en een XML-schemabestand.
-
Klik op Externe gegevens > XML-bestand (in de groep Exporteren).
-
Geef in het dialoogvenster Exporteren - XML-bestand de bestandsnaam en de indeling op en klik op OK.
-
-
Sluit Access af.
Excel
-
Maak een XML-toewijzing die is gebaseerd op het XML-schemabestand dat u uit Access hebt geëxporteerd.
Als het dialoogvenster Meerdere hoofdmappen wordt weergegeven, moet u dataroot kiezen om een XML-tabel te kunnen maken.
-
Maak een XML-tabel door het element dataroot toe te wijzen. Zie XML-elementen toewijzen voor meer informatie.
-
Importeer het XML-bestand dat u hebt geëxporteerd uit Access.
Notities:
-
Een XML-schema bevat verschillende soorten elementconstructies die niet worden ondersteund in Excel. De volgende elementconstructies kunnen niet worden geïmporteerd in Excel:
-
>< Met dit element kunt u elementen opnemen die niet door het schema zijn gedeclareerd.
-
<anyAttribute> Met dit element kunt u kenmerken opnemen die niet door het schema zijn gedeclareerd.
-
Recursieve structuren Een gangbaar voorbeeld van een recursieve structuur is een hiërarchie van werknemers en managers waarin dezelfde XML-elementen zijn genest in meerdere niveaus. In Excel worden alleen recursieve structuren ondersteund die niet meer dan één niveau diep zijn.
-
Abstracte elementen Deze elementen worden gedeclareerd in het schema, maar worden nooit als elementen gebruikt. Abstracte elementen zijn afhankelijk van andere elementen die worden gebruikt in de plaats van het abstracte element.
-
Substitutiegroepen Deze groepen maken het mogelijk een element te gebruiken wanneer wordt verwezen naar een ander element. Via het kenmerk <substitutionGroup> wordt aangegeven dat een element lid is van de substitutiegroep van een ander element.
-
Gemengde inhoud Deze inhoud wordt gedeclareerd met behulp van mixed="true" in een complexe typedefinitie. De inhoud zelf van het complexe type wordt niet ondersteund in Excel, maar wel de onderliggende codes en kenmerken die zijn gedefinieerd in het complexe type.
Voorbeelden van XML-schema- en XML-gegevensbestanden gebruiken
De volgende voorbeeldgegevens bevatten XML-basiselementen en -structuren die u kunt gebruiken om XML-toewijzingen te testen als u niet beschikt over XML- of tekstbestanden om de XML-bestanden te maken. U kunt deze voorbeeldgegevens als volgt opslaan in bestanden op uw computer:
-
Selecteer de voorbeeldtekst van het bestand dat u wilt kopiëren en druk op Ctrl+C.
-
Start Kladblok en druk op Ctrl+V om de voorbeeldtekst te plakken.
-
Druk op Ctrl+S om het bestand op te slaan met de bestandsnaam en de extensie van de voorbeeldgegevens die u hebt gekopieerd.
-
Druk in Kladblok op Ctrl+N en herhaal stappen 1-3 om een bestand te maken voor de tweede voorbeeldtekst.
-
Sluit Kladblok af.
XML-voorbeeldgegevens (Expenses.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-voorbeeldschema (Expenses.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>
Een XML-toewijzing maken
U maakt een XML-toewijzing door een XML-schema toe te voegen aan een werkmap. Het schema kunt u kopiëren uit een XML-schemabestand (.xsd), maar Excel kan ook proberen het schema af te leiden uit een XML-gegevensbestand (.xsd).
-
Klik op Ontwikkelaars > Bron.
Als u het tabblad Ontwikkelaars niet ziet, raadpleegt u Het tabblad Ontwikkelaars weergeven.
-
Klik in het taakvenster XML-bron op XML-toewijzingen en klik vervolgens op Toevoegen.
-
Klik in de lijst Zoeken in op het station, de map of de internetlocatie met het bestand dat u wilt openen.
-
Klik op het bestand en klik op Openen.
-
Als u een XML-schemabestand opent, wordt er een XML-toewijzing gemaakt op basis van het XML-schema. Als het dialoogvenster Meerdere hoofdmappen wordt weergegeven, kiest u een van de hoofdknooppunten die zijn gedefinieerd in het XML-schemabestand.
-
Als u een XML-gegevensbestand opent, probeert Excel het XML-schema af te leiden van de XML-gegevens en wordt er vervolgens een XML-toewijzing gemaakt.
-
-
Klik op OK.
De XML-toewijzing verschijnt in het taakvenster XML-bron.
XML-elementen toewijzen
U wijst XML-elementen toe aan enkelvoudig toegewezen cellen en herhalende cellen in XML-tabellen, zodat u een relatie kunt creëren tussen de cel en het XML-gegevenselement in het XML-schema.
-
Klik op Ontwikkelaars > Bron.
Als u het tabblad Ontwikkelaars niet ziet, raadpleegt u Het tabblad Ontwikkelaars weergeven.
-
Selecteer in het taakvenster XML-bron de elementen die u wilt toewijzen.
Als u niet-aangrenzende elementen wilt selecteren, klikt u op één element, houdt u Ctrl ingedrukt en klikt u vervolgens op alle elementen die u wilt toewijzen.
-
Ga als volgt te werk om de elementen toe te wijzen:
-
Klik met de rechtermuisknop op de geselecteerde elementen en klik op Element toewijzen.
-
Selecteer een cel in het dialoogvenster XML-elementen toewijzen en klik op OK.
Tip: U kunt de geselecteerde elementen ook slepen naar de locatie in het werkblad waar u ze wilt weergeven.
Elk element wordt vetgedrukt weergegeven in het taakvenster XML-bron om aan te geven dat het element is toegewezen.
-
-
Bepalen hoe u wilt omgaan met labels en kolomkoppen:
-
Wanneer u een niet-herhalend XML-element naar het werkblad sleept om een enkelvoudig toegewezen cel te maken, wordt een infolabel met drie opdrachten weergegeven. Hiermee bepaalt u de plaatsing van de kop of het label:
Mijn gegevens hebben al een kop Klik op deze optie als u de kop van het XML-element wilt negeren omdat de cel al een kop heeft (links van of boven de gegevens).
XML-kop aan de linkerkant plaatsen Klik op deze optie als u de kop van het XML-element wilt gebruiken als cellabel (links van de gegevens).
XML-kop aan de bovenkant plaatsen Klik op deze optie als u de kop van het XML-element wilt gebruiken als celkop (boven de gegevens).
-
Wanneer u een herhalend XML-element naar het werkblad sleept om herhalende cellen in een XML-tabel te maken, worden de namen van de XML-elementen automatisch gebruikt als kolomkoppen voor de tabel. U kunt de kolomkoppen echter desgewenst wijzigen door de cellen met de kolomkoppen te bewerken.
In het taakvenster XML-bron kunt u op Opties klikken om de werking van de XML-tabel verder aan te passen:
Elementen automatisch samenvoegen bij het toewijzen Als dit selectievakje is ingeschakeld, worden XML-tabellen automatisch uitgebreid wanneer u een element sleept naar een cel die grenst aan de XML-tabel.
Mijn gegevens hebben koppen Als dit vakje is ingeschakeld, kunnen bestaande gegevens worden gebruikt als kolomkoppen wanneer u herhalende elementen aan uw werkblad toewijst.
Notities:
-
Als alle XML-opdrachten lichtgrijs zijn en u geen XML-elementen kunt toewijzen aan cellen, wordt de werkmap mogelijk gedeeld. Klik op Controleren > Werkmap delen om te kijken of dat zo is en het delen van de map te stoppen.
Als u XML-elementen wilt toewijzen in een werkmap die u wilt delen, moet u de XML-elementen toewijzen aan de gewenste cellen, de XML-gegevens importeren, alle XML-toewijzingen verwijderen en de werkmap vervolgens delen.
-
Als u een XML-tabel met gegevens niet naar een andere werkmap kunt kopiëren, is er mogelijk een XML-toewijzing aan de XML-tabel gekoppeld waarin de gegevensstructuur is gedefinieerd. Deze XML-toewijzing is opgeslagen in de werkmap, maar wanneer u de XML-tabel naar een nieuwe werkmap kopieert, wordt de XML-toewijzing niet automatisch meegenomen. In plaats van de XML-tabel te kopiëren, wordt er een Excel-tabel gemaakt die dezelfde gegevens bevat. Als u wilt dat de nieuwe tabel wordt gemaakt als een XML-tabel, gaat u als volgt te werk:
-
Voeg een XML-toewijzing toe aan de nieuwe werkmap met behulp van het XML- of XSD-bestand dat u hebt gebruikt om de oorspronkelijke XML-toewijzing te maken. Sla deze bestanden op als u XML-toewijzingen wilt toevoegen aan andere werkmappen.
-
Wijs de XML-elementen toe aan de tabel om een XML-tabel te maken.
-
-
Wanneer u een herhalend XML-element toewijst aan een samengevoegde cel, wordt de cel gesplitst. Dit werkt zoals het bedoeld is, aangezien herhalende elementen alleen werken met niet-samengevoegde cellen.
U kunt enkelvoudige, niet-herhalende XML-elementen toewijzen aan een samengevoegde cel, maar het toewijzen van een herhalend element (of een element dat een herhalend element bevat) aan een samengevoegde cel is niet toegestaan. De cel wordt gesplitst en het element wordt toegewezen aan de cel met de aanwijzer.
-
-
Tips:
-
U kunt de toewijzing van XML-elementen ongedaan maken die u niet wilt gebruiken of om te voorkomen dat de inhoud van cellen wordt overschreven wanneer u XML-gegevens importeert. U kunt de toewijzing van een XML-element bijvoorbeeld tijdelijk opheffen als deze momenteel is toegewezen aan een enkelvoudige cel of aan herhalende cellen die formules bevatten en u de formules niet wilt overschrijven wanneer u een XML-bestand importeert. Wanneer het importeren is voltooid, kunt u het XML-element opnieuw toewijzen aan de formulecellen, zodat u de resultaten van de formules kunt exporteren naar het XML-gegevensbestand.
-
Als u de toewijzing van XML-elementen wilt opheffen, klikt u met de rechtermuisknop op hun naam in het taakvenster XML-bron en klikt u op Element verwijderen.
Het tabblad Ontwikkelaar weergeven
Als u het tabblad Ontwikkelaar niet ziet, geeft u dit als volgt weer:
-
Klik op Bestand > Opties.
-
Klik op de categorie Lint aanpassen.
-
Schakel onder Hoofdtabbladen het selectievakje Ontwikkelaars in en klik op OK.
Zie ook
XML-toewijzingsgegevens verwijderen uit een werkmap