Applies ToExcel dla Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Jeśli chcesz importować i eksportować dane XML w programie Excel, przydatna będzie mapa XML, która odpowiednio do potrzeb kojarzy elementy XML z danymi w komórkach. Do utworzenia takiej mapy potrzebny jest plik schematu XML (xsd) oraz plik danych XML (xml). Po utworzeniu mapy XML możesz mapować elementy XML tak, jak zechcesz.

Porada: Więcej informacji o korzystaniu z języka XML w programie Excel znajdziesz w tym omówieniu języka XML w programie Excel.

Lokalizowanie lub tworzenie schematu XML i plików danych XML

Jeśli inna baza danych lub aplikacja utworzyła już schemat XML albo plik danych XML, możesz z niego skorzystać. Możesz mieć na przykład aplikację LOB, która eksportuje dane do plików XML w tych formatach, komercyjną witrynę lub usługę internetową, która dostarcza takie pliki XML, albo niestandardową aplikację opracowaną przez Twój dział informatyczny, która automatycznie tworzy takie pliki.

Jeśli nie masz niezbędnych plików XML, możesz je utworzyć, zapisując dane, których chcesz użyć, jako plik tekstowy. Następnie możesz przekonwertować ten plik tekstowy na wymagane pliki XML za pomocą programów Access i Excel. Poniżej wyjaśniono, jak to zrobić:

Access

  1. Zaimportuj plik tekstowy, który chcesz przekonwertować, i połącz go z nową tabelą.

    1. Kliknij pozycję Plik > Otwórz.

    2. W oknie dialogowym Otwieranie wybierz i otwórz plik bazy danych, w którym chcesz utworzyć nową tabelę.

    3. Kliknij pozycję Dane zewnętrzne > Plik tekstowy i postępuj zgodnie z instrukcjami dla każdej kolejnej czynności — upewnij się, że połączono tabelę z plikiem tekstowym.

      Program Access utworzy nową tabelę i wyświetli ją w okienku nawigacji.

  2. Wyeksportuj dane z tabeli połączonej do pliku danych XML i pliku schematu XML.

    1. Kliknij pozycję Dane zewnętrzne > Plik XML (w grupie Eksportowanie).

    2. W oknie dialogowym Eksportowanie — plik XML określ format i nazwę pliku, a następnie kliknij przycisk OK.

  3. Zamknij program Access.

Excel

  1. Utwórz mapę XML na podstawie pliku schematu XML wyeksportowanego z programu Access.

    Jeśli zostanie wyświetlone okno dialogowe Wiele węzłów głównych, upewnij się, że wybierasz opcję węzeł główny danych — tylko wtedy będzie można utworzyć tabelę XML.

  2. Utwórz tabelę XML, mapując element węzeł główny danych. Zobacz Mapowanie elementów XML, aby uzyskać więcej informacji.

  3. Zaimportuj plik XML wyeksportowany z programu Access.

Uwagi: 

  • Istnieje kilka typów konstrukcji elementów schematu XML, których program Excel nie obsługuje. Oto lista konstrukcji elementów schematu XML, których nie można zaimportować do programu Excel:

  • <dowolne>    Ten element umożliwia dołączanie elementów niezadeklarowanych w schemacie.

  • <dowolny>Attribute     Ten element umożliwia dołączanie atrybutów niezadeklarowanych w schemacie.

  • Struktury rekurencyjne    Typowym przykładem struktury rekurencyjnej jest hierarchia pracowników i kierowników, w której występuje kilka poziomów zagnieżdżenia tych samych elementów XML. Program Excel nie obsługuje struktur rekurencyjnych o głębokości większej niż jeden poziom.

  • Elementy abstrakcyjne    Te elementy są deklarowane w schemacie, ale nie mogą być używane jako elementy. Elementy abstrakcyjne są zależne od innych elementów podstawianych zamiast nich.

  • Grupy podstawiania    Te grupy umożliwiają zamianę elementu niezależnie od miejsca odwołania innego elementu. Atrybut <substitutionGroup> wskazuje, że element jest członkiem grupy podstawiania innego elementu.

  • Zawartość mieszana    Tę zawartość deklaruje się przy użyciu ustawienia mixed="true" w definicji typu złożonego. Program Excel nie obsługuje prostej zawartości typu złożonego, ale obsługuje tagi podrzędne i atrybuty zdefiniowane w tym typie złożonym.

Używanie przykładowego schematu XML i plików danych XML

Jeśli nie masz plików XML lub plików tekstowych, z których można utworzyć pliki XML, możesz przetestować działanie mapowania elementów XML za pomocą poniższych przykładowych danych zawierających podstawowe elementy i struktury XML. Oto, jak możesz zapisać te przykładowe dane jako pliki na swoim komputerze:

  1. Zaznacz przykładowy tekst pliku, który chcesz skopiować, a następnie naciśnij klawisze Ctrl+C.

  2. Uruchom program Notatnik i naciśnij klawisze Ctrl+V, aby wkleić ten przykładowy tekst.

  3. Naciśnij klawisze Ctrl+S, aby zapisać plik z nazwą pliku i rozszerzeniem zgodnym ze skopiowanymi danymi przykładowymi.

  4. Naciśnij klawisze Ctrl+N w programie Notatnik, a następnie powtórz kroki 1–3, aby utworzyć plik dla drugiego przykładowego tekstu.

  5. Zamknij Notatnik.

Przykładowe dane XML (Wydatki.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>

Przykładowy schemat XML (Wydatki.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>

Tworzenie mapy XML

Aby utworzyć mapę XML, dodaj schemat XML do skoroszytu. Schemat można skopiować z pliku schematu XML (xsd) — program Excel może też podjąć próbę ustalenia schematu na podstawie pliku danych XML (xml).

  1. Kliknij pozycję Deweloper > Źródło.

    Polecenia XML na karcie Deweloper

    Jeśli nie widzisz karty Deweloper, zobacz Wyświetlanie karty Deweloper.

  2. W okienku zadań Źródło XML kliknij pozycję Mapy XML, a następnie kliknij przycisk Dodaj.

  3. Na liście Przeszukaj kliknij dysk, folder lub lokalizację internetową zawierającą plik, który chcesz otworzyć.

  4. Kliknij plik, a następnie kliknij przycisk Otwórz.

    • W przypadku pliku schematu XML kod XML utworzy mapę XML na podstawie tego schematu. Jeśli zostanie wyświetlone okno dialogowe Wiele węzłów głównych, wybierz jeden z węzłów głównych zdefiniowanych w pliku schematu XML.

    • W przypadku pliku danych XML program Excel spróbuje ustalić schemat XML na podstawie tych danych XML, a następnie utworzy mapę XML.

  5. Kliknij przycisk OK.

    Mapa XML pojawi się w okienku zadań Źródło XML.

Mapowanie elementów XML

Elementy XML mapuje się do komórek zamapowanych jednokrotnie i komórek powtarzających się w tabelach XML w ten sposób, że można utworzyć relację między komórką i elementem danych XML w schemacie XML.

  1. Kliknij pozycję Deweloper > Źródło.

    Polecenia XML na karcie Deweloper

    Jeśli nie widzisz karty Deweloper, zobacz Wyświetlanie karty Deweloper.

  2. W okienku zadań Źródło XML wybierz elementy, które chcesz zamapować.

    Aby zaznaczyć elementy niesąsiadujące, kliknij pierwszy element, a następnie kliknij każdy z pozostałych elementów, które chcesz zamapować, przytrzymując naciśnięty klawisz Ctrl.

  3. Aby zamapować elementy, wykonaj poniższe czynności:

    1. Kliknij prawym przyciskiem myszy zaznaczony element, a następnie kliknij polecenie Mapuj element.

    2. W oknie dialogowym Mapowanie elementów XML zaznacz komórkę i kliknij przycisk OK.

      Porada: Zaznaczone elementy można też przeciągnąć do lokalizacji w arkuszu, w której mają się pojawić.

      Każdy element zostanie wyświetlony w okienku zadań Źródło XML przy użyciu pogrubionej czcionki, która wskazuje, że element jest zamapowany.

  4. Określ sposób obsługi etykiet i nagłówków kolumn:

    • Gdy przeciągniesz niepowtarzający się element XML do arkusza w celu utworzenia komórki zamapowanej jednokrotnie, zostanie wyświetlony tag inteligentny z trzema poleceniami, za pomocą których można kontrolować położenie nagłówka lub etykiety:

      Moje dane mają już nagłówek    Kliknij tę opcję, aby zignorować nagłówek elementu XML, ponieważ komórka ma już nagłówek (po lewej stronie danych lub nad nimi).

      Umieść nagłówek XML po lewej stronie    Kliknij tę opcję, aby użyć nagłówka elementu XML jako etykiety komórki (po lewej stronie danych).

      Umieść nagłówek XML u góry    Kliknij tę opcję, aby użyć nagłówka elementu XML jako nagłówka komórki (nad danymi).

    • Gdy przeciągniesz powtarzający się element XML do arkusza w celu utworzenia komórek powtarzających się w tabeli XML, nazwy elementów XML zostaną automatycznie użyte jako nagłówki kolumn tabeli. Można jednak zmienić te nagłówki kolumn na dowolne inne nagłówki, edytując komórki nagłówków kolumn.

      Aby dokładniej kontrolować zachowanie tabeli XML, w okienku zadań Źródło XML można kliknąć pozycję Opcje:

      Automatycznie scal elementy podczas mapowania    Po zaznaczeniu tego pola wyboru tabele XML będą automatycznie rozszerzane podczas przeciągania elementu do komórki sąsiadującej z tabelą XML.

      Dane z nagłówkami    Po zaznaczeniu tego pola wyboru można używać istniejących danych jako nagłówków kolumn podczas mapowania powtarzających się elementów na arkusz.

      Uwagi: 

      • Jeśli wszystkie polecenia XML są wygaszone i nie możesz zamapować elementów XML na żadne komórki, być może skoroszyt jest udostępniany. Aby to sprawdzić, kliknij pozycję Recenzja > Udostępnij skoroszyt i w razie potrzeby wyłącz jego udostępnianie.

        Jeśli chcesz zamapować elementy XML w skoroszycie, który ma być udostępniany, zamapuj elementy XML na wybrane komórki, zaimportuj dane XML, usuń wszystkie mapy XML i udostępnij skoroszyt.

      • Jeśli nie możesz skopiować tabeli XML, która zawiera dane, do innego skoroszytu, być może z tą tabelą XML jest skojarzona mapa XML definiująca strukturę danych. Mapa XML jest przechowywana w skoroszycie, ale podczas kopiowania tabeli XML do nowego skoroszytu mapa nie jest uwzględniana automatycznie. Zamiast skopiować tabelę XML, program Excel tworzy tabelę programu Excel, która zawiera te same dane. Jeśli chcesz, aby nowa tabela była tabelą XML, wykonaj następujące czynności:

        1. Dodaj mapę XML do nowego skoroszytu, używając pliku xml lub xsd, za pomocą którego została utworzona oryginalna mapa XML. Aby móc dodawać mapy XML do innych skoroszytów, należy zapisać te pliki.

        2. Zamapuj elementy XML na tabelę, tak aby stała się tabelą XML.

      • Podczas mapowania powtarzającego się elementu XML na scaloną komórkę program Excel rozdziela komórkę. Jest to oczekiwane zachowanie, ponieważ elementy powtarzające się z założenia działają tylko z komórkami rozdzielonymi.

        Możesz zamapować pojedyncze, niepowtarzające się elementy na scalone komórki, ale mapowanie powtarzających się elementów XML (lub elementów zawierających elementy powtarzające się) na scalone komórki nie jest obsługiwane. Komórka zostanie rozdzielona, a element zostanie zamapowany na komórkę, w której znajduje się wskaźnik.

Porady: 

  • Możesz anulować mapowanie elementów XML, których nie chcesz używać, lub zapobiec zastępowaniu zawartości komórek podczas importowania danych XML. Możesz na przykład tymczasowo usunąć mapowanie elementu XML na pojedynczą komórkę lub na komórki powtarzające się, jeśli te komórki zawierają formuły, których nie chcesz zastępować podczas importowania pliku XML. Po zakończeniu importowania można ponownie zamapować element XML na komórki formuły, aby można było wyeksportować wyniki formuł do pliku danych XML.

  • Aby usunąć mapowanie elementu XML, kliknij prawym przyciskiem myszy jego nazwę w okienku zadań Źródło XML, a następnie kliknij polecenie Usuń element.

Wyświetlanie karty Deweloper

Jeśli nie widzisz karty Deweloper, wykonaj następujące czynności, aby ją wyświetlić:

  1. Kliknij pozycję Plik > Opcje.

  2. Kliknij kategorię Dostosowywanie Wstążki.

  3. W obszarze Karty główne zaznacz pole wyboru Deweloper i kliknij przycisk OK.

Zobacz też

Usuwanie informacji mapy XML ze skoroszytu

Dołączanie lub zastępowanie zamapowanych danych XML

Omówienie języka XML w programie Excel

Importowanie danych XML

Eksportowanie danych XML

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.