匯出 XML 資料

套用到
Microsoft 365 Excel Excel 2024 Excel 2021 Excel 2019 Excel 2016

匯入 XML 資料、將 資料映射到工作表的儲存格並對資料做修改後,你通常會想匯出或儲存成 XML 檔案。

重要

  • 在匯出 XML 資料之前,你需要先啟用功能區上的 開發者 標籤。 請參閱顯示開發人員索引標籤
  • 在建立 XML 地圖並在 Excel 中匯出資料成 XML 資料檔時,匯出的列數是有限的。 從 Excel 匯出成 XML 最多可儲存 65,536 筆資料。 如果你的檔案超過 65,536 列,Excel 會匯出前 (#ROWS mod 65,537) 列。 舉例來說,如果你的工作表有 70,000 筆資料,Excel 會匯出 70,000 筆 mod 65537 = 4464 筆。 我們的建議是:1) 用 xlsx 代替,或2) 將檔案存成 XML Spreadsheet 2003 (.xml) ,這樣會失去對應,或者三) 刪除第 65,536 頁後的所有列,然後再匯出,這樣會保留對應,但檔案末尾的資料會遺失。

匯出 XML 資料 (不超過 65,536 列)

  1. 點擊 開發者>匯出
    如果沒有看到 [開發人員] 索引標籤,請參閱顯示開發人員索引標籤

  2. 如果出現一個小型 的「匯出 XML 對話 框」,點擊你想使用的 XML 映射,然後點擊 確定
    此對話框僅在未選取 XML 資料表且工作簿中有多個 XML 映射時才會顯示。

  3. 在大型 [匯出 XML] 對話方塊的 [檔案名稱] 方塊中,輸入 XML 資料檔案的名稱。

  4. 按一下 [匯出]

    注意

    如果你的工作表標題或標籤與 XML 地圖中的 XML 元素名稱不同,Excel 在匯出或儲存 XML 資料時會使用 XML 元素名稱。

匯出超過 65,536 筆 XML 資料 ()

  1. 從檔案中資料列的總數減去 65537。 這樣你就能得到 x 列。
  2. 從 Excel 工作表的開頭刪除 x 列。
  3. 請匯出工作表為 XML 資料檔 (請參閱前一節的程序) 。
  4. 點擊 關閉 ,但不要儲存該工作表。 然後重新打開 Excel 工作表。
  5. 刪除總數 x 之後的所有資料,然後匯出為 XML 資料檔 (請參考前一節的程序說明) 。
    這個程序會提供您資料列的剩餘部分。 屆時你會有兩個 XML 匯出檔案,可以將它們組合成原始工作表的副本。

將對應儲存格中的 XML 資料儲存至 XML 資料檔案

如需舊版 XML 功能的回溯相容性,建議您將檔案儲存至 XML 資料檔案 (. xml),而非使用 [匯出] 命令。

  1. 按下 Ctrl+S 儲存檔案。
    此步驟可確保將活頁簿儲存為 XML 資料檔案時,您對活頁簿所做的任何變更都不會遺失。
  2. 點選「另存為檔案>」,選擇你想儲存檔案的位置。
    僅在 Excel 2007 中,點擊 Microsoft Office 按鈕Office 按鈕圖片 ,指向 「另存為」旁的箭頭,然後點選 「其他格式」。
  3. [檔案名稱] 方塊中,輸入 XML 資料檔案的名稱。
  4. 「另存為類型 」清單中,點選 XML Data,然後點 選「儲存」。
  5. 如果您收到訊息,表示將檔案儲存為 XML 資料可能會導致功能遺失,請按一下 [繼續]。
  6. 如果出現一個小型 的「匯出 XML 對話 框」,點擊你想使用的 XML 映射,然後點擊 確定
    此對話框僅在未選取 XML 資料表且工作簿中有多個 XML 映射時才會出現。
  7. 在大型 [匯出 XML] 對話方塊的 [檔案名稱] 方塊中,輸入 XML 資料檔案的名稱。
  8. 按一下 [匯出]

注意

如果你的工作表標題或標籤與 XML 地圖中的 XML 元素名稱不同,Excel 在匯出或儲存 XML 資料時會使用 XML 元素名稱。

匯出 XML 資料時的常見問題

匯出 XML 資料時,您可能會收到下列類似訊息。

XML 映射可以匯出,但有些必需元素並未映射

此訊息可能有以下幾個原因:

  • 與此 XML 資料表相關的 XML 映射包含一個或多個未映射到 XML 資料表的必要元素。
    XML 來源工作窗格中的項目階層式清單中,會在每一個項目左邊圖示的右上角放置紅色星號,指出其為必要項目。 若要對應必要項目,請將它拖曳至您要其出現的工作表位置。
  • 項目是遞迴結構。
    遞迴結構的常見範例是相同的 XML 項目在員工和管理者的階層中形成好幾個巢狀層級。 雖然您可能已對應 [XML 來源] 工作窗格中的所有項目,但 Excel 不支援包含多層級深度的遞迴結構,因此無法對應所有項目。
  • XML 表格包含混合的內容。
    當項目具有子項目,且子項目外部有簡單文字時,即會出現混合的內容。 一種常見的情況是使用格式化標籤 (如粗體標籤) 來標註項目之內的資料。 雖然可以顯示子項目 (如果 Excel 有支援),但文字內容在匯入資料時會遺失、匯出資料時會無法使用,因此無法以來回方式處理。

你工作簿裡的 XML 地圖無法匯出

若映射元素無法保留與其他元素的關係,則無法匯出 XML 映射。 無法保留此關聯的原因如下:

  • 對應項目的結構描述定義包含在具下列屬性的序列中:

    • maxoccurs 屬性不等於 1。
    • 該序列有多個直接子元素被定義,或有另一個合成器作為直接子元素。
  • 非重複的同層級項目 (擁有相同的重複父項目) 對應到不同的 XML 表格。

  • 多個重複元素會映射到同一個 XML 資料表,且重複不是由祖先元素定義。

  • 來自不同父系的子項目對應到相同的 XML 表格。

此外,若 XML Map 包含以下 XML 結構結構之一,則無法匯出:

  • 清單的清單 一個項目清單,其擁有第二個項目清單。
  • 非正規化資料 XML 資料表中有一個元素,在結構中定義為一旦 maxOccurs 屬性設為 1) (就會出現。 當你將此類元素加入 XML 資料表時,Excel 會將該元素的多個實例填滿該欄位。
  • 選擇映射元素是選擇>結構結構的一部分<

Excel 無法儲存活頁簿,因為它沒有任何對應的範圍

除非你建立一個或多個映射範圍,否則 Excel 無法將工作簿儲存在 XML 資料檔中。

如果你在工作簿中新增了 XML 映射,請依照以下步驟將 XML 元素映射到你的工作表:

  1. 點擊 開發者>來源
    [開發人員] 索引標籤上的 XML 命令
    如果沒有看到 [開發人員] 索引標籤,請參閱顯示開發人員索引標籤
  2. [XML 來源] 工作窗格 中,選取要對應至工作表的項目。
    若要選取不相鄰的項目,請按一下其中一個項目,按住 CTRL,然後按一下每個項目。
  3. 拖曳所選取的項目到您要其在工作表上出現的位置。

如果你還沒在工作簿中新增 XML 映射,或資料不在 XML 表格中,請將工作簿儲存為 Excel Macro-Enabled 工作簿檔案格式 (.xlsm) 。

需要更多協助嗎?

你隨時可以向 Excel 技術社群 的專家詢問,或在 社群中獲得支援。

另請參閱

Excel 中 XML 概述

將 XML 元素對應至 XML 對應中的儲存格