Applies ToExcel för Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Om du vill importera och exportera XML-data i Excel är det användbart med en XML-mappning som associerar XML-element med data i celler så att du får de resultat du önskar. För att skapa en XML-mappning behöver du en XML-schemafil (.xsd) och en XML-datafil (.xml). När du skapat XML-mappningen kan du mappa XML-element som du vill.

Tips: Du hittar mer information om hur du använder XML i Excel i denna översikt över XML i Excel.

Leta reda på eller skapa XML-schema- och XML-datafiler

Om ett XML-schema eller en XML-datafil skapats av en annan databas eller ett annat program kanske du redan har dem. Du kanske har till exempel en branschspecifik programvara som exporterar data till XML-filformaten, en kommersiell webbplats eller webbtjänst som tillhandahåller XML-filerna eller egna program som utvecklats av din IT-avdelning som automatiskt skapar XML-filerna.

Om du inte har nödvändiga XML-filer kan du skapa dem genom att spara de data som du vill använda som en textfil. Sedan kan du använda både Access och Excel för att konvertera textfilen till de XML-filer du behöver. Gör så här:

Access

  1. Importera textfilen som du vill konvertera och koppla den till en ny tabell.

    1. Klicka på Arkiv > Öppna.

    2. I dialogrutan Öppna väljer och öppnar du databasen där du vill skapa en ny tabell.

    3. Klicka på Externa data > Textfil, följ instruktionerna för varje steg och kontrollera att du kopplar tabellen till textfilen.

      Den nya tabellen skapas och visas i navigeringsfönstret i Access.

  2. Exportera data från den länkade tabellen till en XML-datafil och en XML-schemafil.

    1. Klicka på Externa data > XML-fil (i gruppen Exportera).

    2. I dialogrutan Exportera – XML-fil anger du filnamn och format och klickar på OK.

  3. Avsluta Access.

Excel

  1. Skapa en XML-mappning baserad på den XML-schemafil som du exporterade från Access.

    Om dialogrutan Flera rötter visas ska du välja dataroot för att kunna skapa en XML-tabell.

  2. Skapa en XML-tabell genom att mappa elementet dataroot. Mer information finns i Mappa XML-element.

  3. Importera den XML-fil som du exporterade från Access.

Meddelanden: 

  • Det finns flera typer av XML-schemaelementkonstruktioner som inte stöds av Excel. Följande XML-schemaelementkonstruktioner kan inte importeras till Excel:

  • <>    Med det här elementet kan du inkludera element som inte är deklarerade i schemat.

  • <anyAttribute>    Med det här elementet kan du inkludera attribut som inte är deklarerade i schemat.

  • Rekursiva strukturer    Ett vanligt exempel på en rekursiv struktur är en hierarki med anställda och chefer där samma XML-element har kapslats på flera nivåer. Excel stöder inte rekursiva strukturer djupare än en nivå.

  • Abstrakta element    De här elementen ska deklareras i schemat men får inte användas som element. Abstrakta element är beroende av att andra element används som ersättning för det abstrakta elementet.

  • Ersättningsgrupper    De här grupperna tillåter att ett element byts ut när ett annat element refereras till. Ett element indikerar att det ingår i ett annat elements ersättningsgrupp med attributet <substitutionGroup>.

  • Blandat innehåll    Det här innehållet deklareras med mixed="true" i en komplex typdefinition. Excel stöder inte enkelt innehåll av den komplexa typen, men programmet stöder de underordnade taggarna och attributen som definieras i den komplexa typen.

Använda exempelfiler för XML-schema och XML-data

Följande exempeldata har grundläggande XML-element och -strukturer som du kan använda för att testa XML-mappning om du inte har XML-filer eller textfiler för att skapa XML-filer. Så här sparar du dessa exempeldata till filer på din dator:

  1. Markera exempeltexten för den fil som du vill kopiera och tryck på Ctrl+C.

  2. Starta Anteckningar och tryck på Ctrl+V för att klistra in exempeltexten.

  3. Tryck på Ctrl+S för att spara filen med samma filnamn och tillägg som de exempeldata du kopierade.

  4. Tryck på Ctrl+N i Anteckningar och upprepa steg 1–3 för att skapa en fil för den andra exempeltexten.

  5. Stäng Anteckningar.

XML-exempeldata (Kostnader.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-exempelschema (Kostnader.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>

Skapa en XML-mappning

Du kan skapa en XML-mappning genom att lägga till ett XML-schema i en arbetsbok. Schemat kan du kopiera från en XML-schemafil (.xsd) eller så kan Excel försöka utläsa ett från en XML-datafil (.xml).

  1. Klicka på Utvecklare > Källa.

    XML-kommandon på fliken Utvecklare

    Om fliken Utvecklare inte visas läser du Visa fliken Utvecklare.

  2. I åtgärdsfönstret XML-källa klickar du på XML-mappningar och sedan på Lägg till.

  3. Klicka på den enhet, mapp eller Internetsökväg som innehåller den fil du vill öppna i rutan Leta i.

  4. Klicka på filen och sedan på Öppna.

    • För en XML-schemafil skapar XML en XML-mappning baserat på XML-schemat. Om dialogrutan Flera rötter visas väljer du en av rotnoderna som har definierats i XML-schemafilen.

    • För en XML-datafil försöker Excel utläsa XML-schemat från XML-data och skapar sedan en XML-mappning.

  5. Klicka på OK.

    XML-mappningen visas i åtgärdsfönstret XML-källa.

Mappa XML-element

Du mappar XML-element till enkelmappade celler och upprepande celler i XML-tabell, så att du kan skapa samband mellan cellen och XML-dataelementet i XML-schemat.

  1. Klicka på Utvecklare > Källa.

    XML-kommandon på fliken Utvecklare

    Om fliken Utvecklare inte visas läser du Visa fliken Utvecklare.

  2. I åtgärdsfönstret XML-källa markerar du de element som du vill mappa.

    Om du vill markera element som inte är placerade intill varandra klickar du på ett element och håller sedan ned Ctrl och klickar på de andra elementen du vill mappa.

  3. Om du vill mappa element gör du så här:

    1. Högerklicka på de markerade elementen och klicka på Mappa element.

    2. Markera en cell i dialogrutan Mappa XML-element och klicka på OK.

      Tips: Du kan också dra de markerade elementen till den önskade platsen i kalkylbladet.

      De mappade elementen visas i fetstil i åtgärdsfönstret XML-källa.

  4. Bestäm hur du vill hantera etiketter och kolumnrubriker:

    • När du drar ett icke upprepande XML-element till kalkylbladet för att skapa en enkelmappad cell, visas en smart etikett med tre kommandon som du kan använda när du ska styra placeringen av rubriken eller etiketten:

      Det finns redan en rubrik för dessa data    Klicka på det här alternativet om du inte vill använda XML-elementets rubrik eftersom cellen redan har en rubrik (till vänster om informationen eller ovanför informationen).

      Placera XML-rubriken till vänster    Klicka på det här alternativet om du vill använda XML-elementets rubrik som celletikett (till vänster om informationen).

      Placera XML-rubriken ovanför    Klicka på det här alternativet om du vill använda XML-elementets rubrik som cellrubrik (ovanför informationen).

    • När du drar ett upprepande XML-element till kalkylbladet för att skapa upprepande celler i en XML-tabell används namnen på XML-elementen automatiskt som kolumnrubriker i tabellen. Du kan ändra kolumnrubrikerna till valfri rubrik genom att redigera cellen för kolumnrubriken.

      Om du vill ha större kontroll över åtgärdsfönstret XML-källa kan du klicka på Alternativ:

      Sammanfoga element automatiskt vid mappning    Om du markerar den här kryssrutan utvidgas XML-tabeller automatiskt när du drar ett element till en cell intill XML-tabellen.

      Mina data innehåller rubriker    Om du markerar den här kryssrutan kan befintliga data användas som kolumnrubriker när du mappar upprepande element till kalkylbladet.

      Meddelanden: 

      • Om alla XML-kommandon är nedtonade och det inte går att mappa XML-element till celler kan det hända att arbetsboken delas. Klicka på Granska &gt; Dela arbetsbok för att kontrollera om den delas och för att ta bort delningen om så behövs.

        Om du vill mappa XML-element i en arbetsbok som du vill dela mappar du XML-elementen till önskade celler, importerar XML-data, tar bort alla XML-mappningar och delar sedan arbetsboken.

      • Om det inte går att kopiera en XML-tabell som innehåller data till en annan arbetsbok kan XML-tabellen ha en associerad XML-mappning som definierar datastrukturen. Den här XML-mappningen lagras i arbetsboken, men när du kopierar XML-tabellen till en ny arbetsbok inkluderas inte XML-mappningen automatiskt. I stället för att kopiera XML-tabellen skapar Excel en tabell som innehåller samma data. Gör så här om du vill att den nya tabellen ska vara en XML-tabell:

        1. Lägg till en XML-mappning i den nya arbetsboken med hjälp av den .xml- eller .xsd-fil som du använde för att skapa den ursprungliga XML-mappningen. Spara de här filerna om du vill lägga till XML-mappningar i andra arbetsböcker.

        2. Mappa XML-elementen till tabellen om du vill skapa en XML-tabell.

      • När du mappar upprepande XML-element till en sammanfogad cell separerar Excel cellerna. Det här är inget konstigt eftersom upprepande element är utformade att endast fungera med separerade celler.

        Du kan mappa enskilda, ej upprepande XML-element till en sammanfogad cell, men det är inte tillåtet att mappa ett upprepande XML-element (eller ett element som innehåller ett upprepande element) till en sammanfogad cell. Cellen kommer att separeras och elementet mappas till den cell där muspekaren är placerad.

Tips: 

  • Du kan ångra mappningen av XML-element som du inte vill använda eller förhindra att innehållet i celler skrivs över när du importerar XML-data. Du kan till exempel tillfälligt ångra mappningen av ett XML-element från en enda cell eller upprepande celler som innehåller formler som du inte vill skriva över när du importerar en XML-fil. När importen är klar kan du mappa XML-elementet till formelcellerna igen, så att du kan exportera resultatet av formlerna till XML-datafilen.

  • Om du vill ångra mappningen av XML-element högerklickar du på namnet i åtgärdsfönstret XML-källa och klickar på Ta bort element.

Visa fliken Utvecklare

Om fliken Utvecklare inte visas tar du fram den på följande sätt:

  1. Klicka på Arkiv > Alternativ.

  2. Klicka på kategorin Anpassa menyfliksområdet.

  3. Markera rutan Utvecklare under Primära flikar och klicka på OK.

Se även

Ta bort XML-mappningsinformation från en arbetsbok

Lägga till eller skriva över mappade XML-data

Översikt över XML i Excel

Importera XML-data

Exportera XML-data

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.