匯入或連結至 Excel 活頁簿中的資料

匯入或連結至 Excel 活頁簿中的資料

附註: 我們想要以您的語言,用最快的速度為您提供最新的說明內容。 本頁面是經由自動翻譯而成,因此文中可能有文法錯誤或不準確之處。 讓這些內容對您有所幫助是我們的目的。 希望您能在本頁底部告訴我們這項資訊是否有幫助。 此為英文文章出處,以供參考。

有許多方法可以將 Excel 活頁簿的資料匯入至 Access 資料庫。 您可以從開啟的工作表複製資料並貼入 Access 資料工作表、將工作表匯入至新的或現有的資料表,或從 Access 資料庫連結至工作表。

本主題詳細說明如何從 Access 桌面資料庫匯入或連結至 Excel 資料。

您想要做什麼?

了解如何從 Excel 匯入資料

從 Excel 匯入資料

遺漏的值或不正確的值之疑難排解

連結至 Excel 中的資料

疑難排解連結資料表中的 #Num! 與其他不正確的值

了解如何從 Excel 匯入資料

若要將一或多個 Excel 工作表中的部分或所有資料儲存在 Access 中,您應該將工作表的內容匯入至新的或現有的 Access 資料庫。 匯入資料時,Access 會在新的或現有的資料表中建立資料複本,而不會變更來源 Excel 工作表。

需要將 Excel 資料匯入 Access 的常見情況

  • 長久以來,您都是使用 Excel ,但是您在接下來想要使用 Access 來處理這些資料。 您想要將 Excel 工作表中的資料移至一或多個新的 Access 資料庫。

  • 您的部門或工作群組使用 Access 處理資料,但您偶爾還是會收到採用 Excel 格式而必須合併至 Access 資料庫的資料。 您想要在收到這些 Excel 工作表時就將之匯入資料庫。

  • 您是使用 Access 來管理資料,但小組中的其他成員傳送給您的每週報表是 Excel 活頁簿。 您想要簡化匯入程序,確保資料固定在每週的特定時間匯入至您的資料庫。

如果您是第一次從 Excel 匯入資料

  • 您無法將 Excel 活頁簿儲存為 Access 資料庫。 Excel 並無提供以 Excel 資料建立 Access 資料庫的功能。

  • 當您使用 Access 開啟 Excel 活頁簿時 (在 [開啟舊檔] 對話方塊中,將 [檔案類型] 清單方塊變更為 [Microsoft Office Excel 檔案] 並選取所要的檔案),Access 會建立與活頁簿的連結,而非匯入其資料。 連結至活頁簿以及將工作表匯入資料庫,兩者之間有很大的差別。 如需有關連結的詳細資訊,請參閱本文稍後所述的<連結至 Excel 中的資料>一節。

從 Excel 匯入資料

本節中的步驟將說明如何準備及執行匯入作業,以及如何將匯入設定儲存為規格,以供日後重複使用。 進行時,請記住一次只能匯入一個工作表中的資料。 您無法同時匯入整個活頁簿中的所有資料。

準備工作表

  1. 找出來源檔案並選取包含所要資料的工作表以匯入至 Access。 如果只要匯入工作表的其中一部分,您可以定義只包含您要匯入之儲存格的具名範圍。

    定義具名範圍 (可省略)   

    1. 切換至 Excel,並開啟所要匯入之資料所在的工作表。

    2. 選取包含所要匯入之資料的儲存格範圍。

    3. 在選取範圍內按一下滑鼠右鍵,然後按一下 [為範圍命名] 或 [定義名稱]。

    4. 在 [新名稱] 對話方塊的 [名稱] 方塊中指定範圍名稱,並按一下 [確定]。

      請記住,執行匯入作業時,一次只能匯入一個工作表。 若要匯入多個工作表的資料,請針對每個工作表重複執行匯入作業。

  2. 檢閱來源資料,並根據下列表格所述採取行動。

    元素

    描述

    欄數

    因為 Access 不支援超過 255 個欄位的資料表,因此所要匯入的來源欄數不可超過 255 個。

    略過欄與列

    只包含來源工作表或具名範圍中所要匯入的列與欄,是很好的做法。

    資料列    您無法篩選或匯入作業期間略過的資料列。

        您無法略過欄則執行作業期間如果您選擇將資料新增至現有的資料表。

    表格格式

    請確定儲存格採用表格格式。 如果工作表或具名範圍中包含合併的儲存格,則儲存格的內容會放在對應最左欄的欄位,而其他欄位則為空白。

    空白的欄、列以及儲存格

    將工作表或範圍中所有不必要的空白欄與列加以刪除。 如果工作表或範圍中包含空白儲存格,請嘗試填入遺失的資料。 如果您打算將記錄附加至現有的資料表,請確認資料表中的對應欄位接受 Null (遺失或未知) 值。 如果 [必要] 欄位屬性設定成 [否],且 [驗證規則] 屬性設定並不避免 Null 值,欄位就會接受 Null 值。

    錯誤值

    如果工作表或範圍中的一或多個儲存格包含錯誤值 (例如 #NUM#DIV),請修正這些值後再開始匯入作業。 如果來源工作表或範圍中包含錯誤值,則 Access 會在資料表中的對應欄位輸入 Null 值。 如需有關這些錯誤修正方法的詳細資訊,請參閱本文稍後的<疑難排解遺漏的值或不正確的值>一節。

    資料類型

    若要避免在匯入期間發生錯誤,請確定每個來源欄的所有列均包含相同類型的資料。 Access 會掃描前八個來源列來判斷資料表中的欄位資料類型。 強烈建議您先確認任一欄中的前八個來源列並未混合使用不同資料類型的值。 否則,Access 可能無法將正確的資料類型指派給該欄。

    此外,在開始匯入作業之前,最好先將 Excel 中的各個來源欄加以格式化,並指派特定資料格式。 如果欄包含不同資料類型的值,強烈建議進行格式化作業。 例如,在工作表中的 [航班] 欄可能包含數字與文字值,例如 871、AA90 和 171。 若要避免出現遺失或不正確的值,請執行下列操作:

    1. 以滑鼠右鍵按一下該欄名,然後按一下 [儲存格格式]。

    2. 在 [數值] 索引標籤底下的 [類別] 中,選取格式。 對於 [航班] 欄而言,您可能會選擇 [文字]。

    3. 按一下 [確定]。

    如果來源欄已格式化,但第八列以後的列中仍包含混合的值,則匯入作業可能仍會略過這些值或以不正確的方式轉換這些值。 如需疑難排解的相關資訊,請參閱<疑難排解遺漏的值或不正確的值>一節。

    第一列

    如果工作表或具名範圍中的第一列包含欄名,您可以在匯入作業期間,指定 Access 將第一列的資料視為欄位名稱。 如果來源工作表或範圍中不包含名稱,執行匯入作業之前,建議您先將名稱新增至來源。

    附註: 若打算將資料附加至現有資料表,請確定每個欄的名稱與對應的名稱完全相符。 如果欄的名稱與資料表中對應欄位的名稱不同,匯入作業將會失敗。 若要查看欄位名稱,請在 Access 中以 [設計檢視] 開啟資料表。

  3. 如果來源活頁簿已開啟,請予以關閉。 如果來源檔案在執行匯入作業期間並未關閉,可能會導致資料轉換錯誤。

準備目的資料庫

  1. 開啟要儲存匯入資料的 Access 資料庫。 確定資料庫並非唯讀,而且您擁有變更資料庫的權限。

    -或者-

    如果您不要將資料儲存至任何現有的資料庫,請建立空白資料庫。 做法如下:

    依序按一下 [檔案] 索引標籤 > [新增] > [空白資料庫]。

  2. 開始執行匯入作業之前,請先決定要將資料儲存至新的資料表或現有資料表。

    建立新資料表    如果您選擇要儲存新的表格中的資料,Access 會建立一個資料表,並將匯入的資料新增到這個表格。 如果有指定名稱的表格已經存在,Access 會覆寫匯入的資料表格的內容。

    附加至現有資料表    如果您選擇將資料新增至現有資料表,Excel 工作表中的資料列會附加至指定的資料表。

    請記住,附加作業期間所發生的失敗大多都是因為來源資料不符合目的資料表的結構與欄位設定所致。 若要避免發生此狀況,請在 [設計檢視] 中開啟目的資料表,並檢閱下列項目:

    • 第一列    如果來源工作表或具名的範圍的第一列並不包含欄標題,確保符合來源工作表中的每個資料行的位置與資料類型的資料表中的對應欄位。 如果第一列包含欄標題,以符合,不需要的欄和欄位順序,但每個資料行的名稱與資料類型必須完全符合其對應的欄位。

    • 遺漏或額外的欄位    如果來源工作表中的一或多個欄位不存在於目的資料表,新增開始匯入作業之前。 不過,如果資料表包含不存在於來源中的欄位,您不需要從資料表刪除這些欄位,如果他們接受 null 值。

      提示: 如果 [必要] 屬性設定成 [否],且 [驗證規則] 屬性設定並不避免 Null 值,欄位就會接受 Null 值。

    • 主索引鍵    如果資料表包含主索引鍵欄位,來源工作表或範圍必須包含與主索引鍵欄位,相容的值的欄,並匯入的關鍵值必須是唯一。 如果匯入的記錄包含已經存在於目的資料表的主索引鍵值,匯入作業會顯示錯誤訊息。

    • 索引的欄位    如果資料表中欄位的 [索引] 屬性設定為 [是 (不可重複),來源工作表或範圍中的對應欄便必須含唯一值。

      進行後續步驟以執行匯入作業。

開始執行匯入作業

  1. 匯入/連結精靈的位置會根據您的 Access 版本而稍有不同。 選擇符合您 Access 版本的步驟:

    • 如果您是在 [外部資料] 索引標籤上最新版的 Office 365 訂閱版本的 Access 或 Access 2019,在 [匯入 & 連結] 群組中,按一下新的資料來源>從檔案> Excel

    • 如果您使用的是 Access 2016、Access 2013 或 Access 2010,請在 [外部資料] 索引標籤上,按一下 [匯入與連結] 群組中的 [Excel]。

    附註: 使用 [外部資料] 索引標籤必須開啟資料庫。

  2. 在 [取得外部資料 - Excel 試算表] 對話方塊的 [檔案名稱] 方塊中,指定所要匯入之資料的 Excel 檔案名稱。

    -或者-

    按一下 [瀏覽] 並使用 [開啟舊檔] 對話方塊,找出所要匯入的檔案。

  3. 指定匯入資料的儲存方式。

    若要將資料儲存在新資料表,請選取 [匯入來源資料至目前資料庫的新資料表]。 稍後系統將提示您替此資料表命名。

    若要將資料附加至現有資料表,請選取 [新增記錄的複本至資料表],並從下拉式清單中選取資料表。 如果資料庫不含資料表,則無法使用這個選項。

    若要透過建立連結的資料表以連結至資料來源,請參閱本文稍後所述的連結至 Excel 中的資料

  4. 按一下 [確定]。

    [匯入試算表精靈] 會隨即啟動,並引導您完成匯入程序。 進入下一組步驟。

使用 [匯入試算表精靈]

  1. 在精靈的第一頁上,選取包含所要匯入之資料的工作表,然後按一下 [下一步]。

  2. 在精靈的第二頁上,按一下 [顯示工作表] 或 [顯示已命名的範圍],選取所要匯入的工作表或具名範圍,然後按一下 [下一步]。

  3. 如果來源工作表或範圍的第一列包含欄位名稱,請選取 [第一列是欄名],然後按一下 [下一步]。

    若要將資料匯入到新資料表,Access 會使用這些欄名替資料表中的欄位命名。 您可以在匯入作業期間或之後變更這些名稱。 若要將資料附加到現有資料表,請確定來源工作表中的欄名完全符合目的資料表中的欄位名稱。

    若要將資料附加至現有資料表,請直接跳至步驟 6。 若要將資料新增至新資料表,請依照其餘的步驟進行。

  4. 精靈會提示您先檢閱欄位屬性。 按一下頁面下半部的欄位,以顯示對應欄位的屬性。 也可以執行下列任何一項操作:

    • 若有需要,請檢閱並變更目的欄位的名稱與資料類型。

      Access 會檢閱各欄的前八列,以建議對應欄位的資料類型。 如果工作表中的欄在前八列中包含不同類型的值 (例如文字和數字),則精靈會建議相容於欄之所有值的資料類型 - 通常會是 [文字] 資料類型。 雖然您可以選擇不同的資料類型,但請記住,若是該值與您所選擇的資料類型不相容,則執行匯入程序時會忽略或不正確地轉換這些值。 如需有關如何修正遺失或不正確值的詳細資訊,請參閱本文稍後所述的<疑難排解遺漏的值或不正確的值>一節。

    • 若要在欄位中建立索引,請將 [索引] 設定為 [是]。

    • 若要完全略過某個來源欄,請選取 [不匯入欄位 (略過)] 核取方塊。

      選項選取完成之後,按一下 [下一步]。

  5. 在下一個畫面中,指定資料表的主索引鍵。 若是選取 [讓 Access 加入主索引鍵],Access 會新增 [自動編號] 欄位做為目的資料表中的第一個欄位,並自動填入從 1 開始的唯一識別碼值。 按一下 [下一步]。

  6. 在精靈的最後畫面中,指定目的資料表的名稱。 在 [匯入至資料表] 方塊中,輸入資料表名稱。 如果資料表已存在,Access 會顯示提示訊息,詢問您是否要覆寫資料表的現有內容。 按一下 [是] 以繼續,或按一下 [否] 以指定不同的目的資料表名稱,然後按一下 [完成] 以匯入資料。

    如果 Access 無法匯入部分或所有資料,精靈會顯示說明匯入作業狀態的頁面。 此外,您也可以將此作業的詳細資料儲存為規格供日後使用。 相反地,如果此作業完全失敗,Access 會顯示「在試著匯入檔案時發生錯誤」的訊息。

  7. 按一下 [是] 以儲存作業的詳細資料以供日後使用。 儲存詳細資料可協助您在稍後重複此項作業,而不用每次都要逐步執行精靈。

請參閱將匯入或匯出作業的詳細資料儲存為規格,了解如何儲存您的規格詳細資料。

請參閱執行已儲存的匯入或匯出規格,了解如何執行已儲存的匯入或連結規格。

請參閱排程匯入或匯出規格,了解如何排程匯入和連結工作在特定時間執行。

遺漏的值或不正確的值之疑難排解

如果您收到「在試著匯入檔案時發生錯誤」的訊息,則執行匯入作業完全失敗。 相反地,如果匯入作業顯示對話方塊提示您儲存作業詳細資料,則作業可以匯入全部或部分的資料。 狀態訊息也會說明包含在匯入作業期間發生任何錯誤之描述的錯誤記錄檔資料表名稱。

重要: 即使狀態訊息顯示作業順利完成,您也應該檢閱資料表的內容與結構,確保一切正常,才能開始使用資料表。

  • 在 [資料工作表檢視] 中開啟目的資料表,檢查是否所有資料均已新增至資料表。

  • 在 [設計檢視] 中開啟資料表,檢閱欄位的資料類型以及其他屬性設定。

下表說明修正遺失或不正確的值時可採取的步驟。

提示: 針對結果進行疑難排解時,如果您發現只有一些值遺失,則您可以將其手動新增至資料表。 相反地,如果您發現整欄或大部分的值不是遺失就是未正確匯入,則您應該在來源檔案中修正此問題。 修正所有已知問題後,請重複執行匯入作業。

問題

解決方式

圖形元素

您無法匯入圖形元素,例如標誌、圖表和圖片。 請在匯入作業完成後,以手動方式新增至資料庫。

計算值

匯入的是計算結果欄或計算儲存格的結果,而非基礎公式。 進行匯入作業期間,您可以指定與公式結果相容的資料類型,例如 [數值]。

True 或 False 及 -1 或 0 值

如果來源工作表或範圍中包含一個只包含 TRUE 或 FALSE 值的欄,Access 就會針對該欄建立 [是/否] 欄位並在欄位中插入 -1 或 0 的值。 不過,如果來源工作表或範圍中包括一個只包含 -1 或 0 值的欄,則根據預設,Access 會針對該資料欄建立數值欄位。 您可以在匯入作業期間將欄位資料類型變更為 [是/否] 以避免發生此問題。

多重值欄位

當您將資料匯入至新資料表或附加至現有資料表時,Access 並不會支援多重值的欄位,即使來源欄包含以分號 (;) 分隔的值清單。 值清單會視為單一值,並且會放在文字欄位。

截斷的資料

如果 Access 資料表中的欄顯示的資料遭截斷,請在 [資料工作表檢視] 中試著增加欄寬。 如果這樣也無法解決問題,代表在 Excel 數值欄中的資料過大,超過在 Access 中目的欄位的欄位大小。 例如,在 Access 資料庫中的目的欄位可能將 [欄位大小] 屬性設為 [位元組],但來源資料包含的值大於 255。 修正來源檔案中的值,並再次嘗試匯入。

顯示格式

您可能需要在 [設計檢視] 中設定特定欄位的 [格式] 屬性,以確保這些值在 [資料工作表檢視] 中能夠正確顯示。 例如:

  • 匯入作業完成後,[是/否] 欄位在 [資料工作表檢視] 中會顯示為 -1 和 0。 若要修正此問題,請在匯入作業完成後,將欄位的 [格式] 屬性設為 [是/否],以改為顯示核取方塊。

  • 完整日期和中日期在 Access 中可能會顯示為簡短日期。 若要修正此問題,請在 Access 中,以 [設計檢視] 開啟目的資料表,並將日期欄位的 [格式] 屬性設定為 [完整日期] 或 [中日期]。

附註: 如果來源工作表包含 RTF 格式設定,例如粗體、底線或斜體,則仍會匯入文字,但格式設定都會遺失。

重複的值 (索引鍵衝突錯誤)

您匯入的記錄可能包含重複值,無法儲存於目的資料表的主索引鍵欄位或 [索引] 屬性設為 [是 (不可重複)] 的欄位。 刪除來源檔案中的重複值,並再度嘗試匯入。

日期值相差 4 年

從 Excel 工作表匯入的日期欄位會可能會差四年。 Excel for Windows 採用 1900 年日期系統 (序號範圍從 1 到 65,380),其對應日期為 1900 年 1 月 1 日到 2078 年 12 月 31 日。 然而,Excel for the Macintosh 則是採用 1904 年日期系統 (序號範圍從 0 到 63,918),其對應日期為 1904 年 1 月 1 日到 2078 年 12 月 31 日。

請在匯入資料之前變更 Excel 活頁簿的日期系統,或是在附加資料之後執行使用運算式 [日期欄位名稱] + 1462 的更新查詢,以修正日期。

Null 值

您可能會在匯入作業的最後看到有關資料在作業期間遭到刪除或遺失的錯誤訊息,或是當您以 [資料工作表檢視] 開啟資料表時,您可能會看到某些欄位值空白。 如果 Excel 中的來源欄並未格式化,或是前八個來源列包含不同資料類型的值,請開啟來源工作表並執行下列操作:

  • 格式化來源欄。

  • 移動列,讓各欄的前八列不會包含不同資料類型的值。

  • 在匯入作業期間,為各欄位選取適當的資料類型。 如果資料類型不正確,則匯入作業完成後,您可能會在整欄中看見 Null 值或不正確的值。

上述步驟有助於避免 Null 值的出現。 下表列出仍會看見 Null 值的情況:

遺失值的類型

匯入目標位置

目的欄位類型

解決方式

文字

新資料表

日期

以日期值取代所有文字值,然後再次嘗試匯入。

文字

現有資料表

數值或日期

以符合目的欄位資料類型的值取代所有文字值,然後再次嘗試匯入。

日期值遭到數值所取代

在下列情況中,您會看見像是隨機選取的五位數數字,而非實際的日期值:

  • 工作表中來源欄的前八列只包含數值,但後續列中包含部分日期值。 這些日期值將會進行不正確的轉換。

  • 來源欄的前八列中,有部分包含日期值,而您嘗試將之匯入數值欄位。 這些日期值將會進行不正確的轉換。

    若要避免此問題,請以數值取代來源欄中的日期值,然後再次嘗試匯入。

    有時候,如果主要包含日期值的欄另外也包含一些文字值,則所有日期值可能會顯示為像是隨機選取的五位數數字。 若要避免此問題,請以日期值取代文字值,然後再次嘗試匯入。

數值遭到日期值所取代

在下列情況中,您會看見像是隨機選取的日期值,而非實際的數值:

  • 來源欄的前八列只包含日期值,但後續列中包含部分數值。 這些數值將會進行不正確的轉換。

  • 來源欄的前列中,有部分包含數值,而您嘗試將之匯入日期欄位。 這些數值將會進行不正確的轉換。

若要避免此問題,請以日期值取代來源欄中的數值,然後再次嘗試匯入。

此外,您可能會想要在 [資料工作表檢視] 中檢閱錯誤記錄檔資料表 (如精靈的最後頁面中所述)。 資料表有三個欄位 — [錯誤]、[欄位]、[列]。 每列都包含特定錯誤的相關資訊,而 [錯誤] 欄位的內容應可協助您進行問題的疑難排解。

錯誤字串與疑難排解提示

錯誤

描述

欄位截斷

檔案中的值過大,超過該欄位的 [欄位大小] 屬性設定。

類型轉換失敗

工作表中的值與該欄位的資料類型不符。 該值在目的欄位中可能會遺失或顯示為不正確的值。 請參閱上一個表格以了解如何疑難排解此問題的詳細資訊。

索引鍵衝突

這個記錄的主索引鍵值重複;在資料表中已有這個值。 

驗證規則失敗

有個值違反該欄位或該資料表使用 [驗證規則] 屬性所設定的規則集。

[必要] 欄位中出現 Null

該欄位不允許 Null 值,因為欄位的 [必要] 屬性設定為 [是]。

[自動編號] 欄位中出現 Null 值

您要匯入的資料包含要附加到 [自動編號] 欄位的 Null 值。

無法剖析的記錄

文字值中包含文字分隔符號字元 (通常是雙引號)。 每當有值包含分隔符號字元,字元就會在文字檔案中重複兩次,例如:

4 1/2"" 的直徑

頁面頂端

連結至 Excel 中的資料

您可以將 Access 資料庫連結至其他程式中的資料,藉此使用 Access 提供的查詢和報告工具,而不需要在資料庫中維護 Excel 資料複本。

當您連結至 Excel 工作表或具名範圍時,Access 就會建立連接至來源儲存格的新資料表。 您在 Excel 中對來源儲存格所做的任何變更,會顯示在連結的資料表中。 然而,您無法在 Access 中編輯對應資料表的內容。 若要新增、編輯或刪除資料,您必須在來源檔案中進行變更。

需要從 Access 連結至 Excel 工作表的常見情況

一般而言,您會因為下列原因而連結至 Excel 工作表 (而不使用匯入):

  • 您要繼續將資料保留在 Excel 工作表中,但又要能夠使用 Access 強大的查詢和報表功能。

  • 您的部門或工作群組使用的是 Access,但您所要處理的外部來源資料位於 Excel 工作表中。 您不想要維護外部資料的複本,但希望能夠在 Access 中處理該資料。

如果您是第一次連結至 Excel 工作表

  • 您無法從 Excel 中建立 Access 資料庫的連結。

  • 當您連結至 Excel 檔案時,Access 會建立新資料表,通常稱為連結資料表。 資料表會顯示來源工作表或具名範圍中的資料,但是不會實際將資料儲存在資料庫中。

  • 您無法將 Excel 資料連結至資料庫中的現有資料表。 這表示您無法藉由執行連結作業,將資料附加至現有資料表。

  • 資料庫可以包含多個連結資料表。

  • 在 Excel 中對資料所做的任何變更都會自動反映在連結資料表。 然而,Access 中的連結資料表內容與結構是唯讀狀態。

  • 當您在 Access 中開啟 Excel 活頁簿 (在 [開啟舊檔] 對話方塊中,將 [檔案類型] 清單方塊變更為 [Microsoft Excel],並選取所要的檔案) 時,Access 會建立空白資料庫,並自動啟動 [連結試算表精靈]。

準備 Excel 資料

  1. 找出 Excel 檔案和工作表或您想要連結之資料的範圍。 如果您不想要連結至整個工作表,請考慮定義具名的範圍,其中包含您想要連結的儲存格。

    在 Excel 中建立具名的範圍 (可省略 – 如果您只想要連結到部分工作表的資料很有用)   

    1. 切換至 Excel 並顯示您要在其中定義具名範圍的工作表。

    2. 選取包含所要連結之資料的儲存格範圍。

    3. 在選取範圍內按一下滑鼠右鍵,然後按一下 [為範圍命名] 或 [定義名稱]。

    4. 在 [新名稱] 對話方塊的 [名稱] 方塊中指定範圍名稱,並按一下 [確定]。

      請注意,在連結作業期間,一次只能連結至一個工作表或範圍。 若要連結至活頁簿中多個位置的資料,請針對每個工作表或範圍重複執行連結作業。

  2. 檢閱來源資料,並根據下表所述採取行動:

    元素

    描述

    表格格式

    請確定儲存格採用表格格式。 如果範圍中包含合併的儲存格,則儲存格的內容會放在對應最左欄的欄位,而其他欄位則為空白。

    略過欄與列

    執行連結作業期間,無法略過來源欄與列。 不過,您可以在匯入至 Access 之後以 [資料工作表檢視] 開啟連結資料表,藉此隱藏欄位和篩選記錄。

    欄數

    因為 Access 不支援超過 255 個欄位的資料表,因此來源欄數不可超過 255 個。

    空白的欄、列以及儲存格

    將 Excel 工作表或範圍中所有不必要的空白欄與列加以刪除。 如果有空白儲存格,請嘗試填入遺失的資料。

    錯誤值

    如果工作表或範圍中的一或多個儲存格包含錯誤值,請在開始執行匯入作業之前先加以修正。 請注意,如果來源工作表或範圍中包含錯誤值,則 Access 會在資料表中的對應欄位輸入 Null 值。

    資料類型

    您無法變更連結資料表中的欄位資料類型或大小。 開始連結作業之前,您必須確認每個欄包含的均是特定類型的資料。

    如果包含不同資料類型的值時,強烈建議將欄格式化。 例如,在工作表中的 [航班] 欄可能包含數字與文字值,例如 871、AA90 和 171。 若要避免出現遺失或不正確的值,請執行下列操作:

    1. 以滑鼠右鍵按一下該欄,然後按一下 [儲存格格式]。

    2. 在 [數值] 索引標籤底下的 [類別] 中,選取格式。

    3. 按一下 [確定]。

    第一列

    如果工作表或具名範圍中的第一列包含欄名,您可以在連結作業期間,指定 Access 將第一列的資料視為欄位名稱。 如果工作表中沒有欄名,或特定欄名違反 Access 中的欄位命名規則,則 Access 會替每個對應欄位指派有效的名稱。

  3. 如果來源檔案已開啟,請予以關閉。

準備目的資料庫

  1. 開啟要建立連結的資料庫。 確定資料庫並非唯讀,而且您擁有變更資料庫的必要權限。

  2. 如果您不要將連結儲存至任何現有的資料庫,請建立空白資料庫:依序按一下 [檔案] 索引標籤 > [新增] > [空白資料庫]。 請注意,如果您使用的是 Access 2007,請按一下 Microsoft Office 按鈕,然後按一下 [新增]。

您現在可以準備開始執行連結作業。

建立連結

  1. 匯入/連結精靈的位置會根據您的 Access 版本而稍有不同。 選擇符合您 Access 版本的步驟:

    • 如果您是在 [外部資料] 索引標籤上最新版的 Office 365 訂閱版本的 Access 或 Access 2019,在 [匯入 & 連結] 群組中,按一下新的資料來源>從檔案> Excel

    • 如果您使用的是 Access 2016、Access 2013 或 Access 2010,請在 [外部資料] 索引標籤上,按一下 [匯入與連結] 群組中的 [Excel]。

    附註: 使用 [外部資料] 索引標籤必須開啟資料庫。

  2. 在 [取得外部資料 - Excel 試算表] 對話方塊的 [檔案名稱] 方塊中,指定 Excel 來源檔案的名稱。

  3. 選取 [以建立連結資料表的方式,連結至資料來源],然後按一下 [確定]。

    [連結試算表精靈] 會隨即啟動,並且會引導您完成連結程序。

  4. 在精靈的第一個頁面上,選取工作表或具名範圍並按一下 [下一步]。

  5. 如果來源工作表或範圍的第一列包含欄位名稱,請選取 [第一列是欄名]。 Access 會使用這些欄名替資料表中的欄位命名。 如果欄名中包含特定的特殊字元,則將無法做為在 Access 中的欄位名稱。 在此情況下,系統會顯示錯誤訊息,告知您 Access 將替該欄位指派有效的名稱。 按一下 [確定] 繼續執行。

  6. 在精靈的最後頁面中,指定連結資料表的名稱,然後按一下 [完成]。 如果使用指定名稱的資料表已存在,則系統會詢問您是否要覆寫現有資料表或查詢。 按一下 [是] 以覆寫資料表或查詢,或按一下 [否] 以指定不同的名稱。

    Access 會嘗試建立連結資料表。 如果作業成功,Access 會顯示「完成連結資料表」的訊息。 開啟連結資料表並檢閱欄位和資料,確認所有欄位資料正確無誤。

    如果您看到錯誤值或不正確的資料,您必須針對來源資料進行疑難排解。 如需有關如何疑難排解錯誤值或不正確值的詳細資訊,請參閱下一節。

頁面頂端

疑難排解連結資料表中的 #Num! 與其他不正確的值

即使您收到「完成連結資料表」的訊息,您都應該在 [資料工作表檢視] 中開啟資料表,以確保列和欄顯示的資料正確無誤。

如果您在資料表中的任何位置看到錯誤或不正確的資料,請按照下表所述採取適當行動,然後再次嘗試進行連結。 請注意,您無法將這些值直接新增至連結資料表,因為該資料表為唯讀狀態。

問題

解決方式

圖形元素

Excel 工作表中的圖形元素,例如標誌、圖表和圖片無法連結至 Access。

顯示格式

您可能需要在 [設計檢視] 中設定特定欄位的 [格式] 屬性,以確保這些值在 [資料工作表檢視] 中能夠正確顯示。

計算值

計算結果欄或計算儲存格的結果會顯示在對應欄位,但您無法在 Access 中檢視公式 (或運算式)。

截斷的文字值

在 [資料工作表檢視] 中增加欄寬。 如果您仍無法看到完整的值,則可能是因為該值長度超過 255 個字元。 Access 只能連結至前 255 個字元,因此您應該匯入資料,而不是連結至該資料。

數值欄位溢位錯誤訊息

連結資料表看起來可能正確無誤,但之後當您執行查詢資料表時,可能會看到「數值欄位溢出」的錯誤訊息。 此情況發生的原因是連結資料表中某個欄位的資料類型與該欄位所儲存的資料類型之間發生衝突。

True 或 False 及 -1 或 0 值

如果來源工作表或範圍中包含一個只包含 TRUE 或 FALSE 值的欄,Access 就會針對連結資料表中的該欄建立 [是/否] 欄位。 不過,如果來源工作表或範圍中包含一個只包含 -1 或 0 值的欄,則根據預設,Access 會針對該欄建立數值欄位,而且您將無法變更資料表中對應欄位的資料類型。 若要在連結資料表中顯示 [是/否] 欄位,請確定來源欄包含 TRUE 和 FALSE 值。

多重值欄位

Access 並不會支援多重值的欄位,即使來源欄包含以分號 (;) 分隔的值清單。 值清單會視為單一值,並且會放在文字欄位。

#Num!

Access 會在欄位中顯示 #Num! 錯誤值而非實際資料的情況如下:

  • 如果大多都是文字值的來源欄中有少數數值或日期值,則不會匯入這些數值或日期值。

  • 如果大多都是數值的來源欄中有少數文字值,則不會匯入這些文字值。

  • 如果大多都是日期值的來源欄中有少數文字值,則不會匯入這些文字值。

若要盡量避免在資料表中出現 Null 值實例,請執行下列操作:

  1. 確定來源欄並未包含不同資料類型的值。

  2. 將 Excel 工作表中的欄加以格式化。

  3. 在連結作業期間,針對各欄位選取適當的資料類型。 如果資料類型不正確,則結果欄中的所有資料行可能只會包含 #Num! 值。

數值取代日期值

如果您在欄位中看到像是隨機選取的五位數數字,請查看主要包含數值的來源欄中是否也包含少數日期值。 數值欄中所顯示的日期值會不正確地轉換成數字。 請以數值取代日期值,然後再次嘗試進行連結。

日期值取代數值

如果您在欄位中看到像是隨機選取的日期值,請查看主要包含日期值的來源欄中是否也包含少數數值。 日期欄中所顯示的數值會不正確地轉換為日期。 請以日期值取代數值,然後再次嘗試進行連結。


頁面頂端

增進您的 Office 技巧
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×