開始使用 Excel 中的 Copilot

套用到
Microsoft 365 Excel Mac 版 Microsoft 365 Excel

如需可用性資訊,請參閱 Excel 中的 Python 可用性。 如果您遇到 Excel 中的 Python 的任何問題,請透過選取 Excel 中的 [ 說明>意見反應 ] 來回報。

第一次使用 Excel 中的 Python 嗎? 從 Excel 中的 Python 簡介開始。

開始使用 Python

若要開始在 Excel 中使用 Python,請選取儲存格,然後在 [公式 ] 索引標籤上選取 [ 插入 Python]。 這會告訴 Excel 您要在選取的儲存格中撰寫 Python 公式。

移至 [公式],然後選取 [插入 Python]。

或者,在儲存格中使用函數 =PY 來啟用 Python。 在儲存格中輸入 =PY 之後,使用向下鍵和 Tab 鍵從函數自動完成功能表中選擇 PY,或在函數中加入左括弧: =PY (。 現在,您可以直接在儲存格中輸入 Python 程式碼。 下列螢幕擷取畫面顯示已選取 PY 函數的 [自動完成] 功能表。

在儲存格中輸入 =PY 以啟用 Python。

在儲存格中啟用 Python 之後,該儲存格就會顯示 PY 圖示。 選取 Python 儲存格時,資料編輯列會顯示相同的 PY 圖示。 如需範例,請參閱下列螢幕擷取畫面。

Excel 活頁簿,其中儲存格中已啟用 Excel 中的 Python,在儲存格中顯示綠色 PY 圖示。

將 Python 與 Excel 儲存格和範圍結合

若要在 Python 儲存格中參照 Excel 物件,請確定該 Python 儲存格處於編輯模式,然後選取要包含在 Python 公式中的儲存格或範圍。 這會自動使用您選取的儲存格或範圍位址填入 Python 儲存格。

秘訣

使用鍵盤快速鍵 F2 在 Python 儲存格中的 Enter 模式和編輯模式之間切換。 切換至 [編輯] 模式可讓您編輯 Python 公式,而切換至 Enter 模式可讓您使用鍵盤選取其他儲存格或範圍。 若要深入了解快速鍵,請參閱 Excel 中的 Python 快速鍵

Excel 中的 Python 會使用自訂 Python 函數 xl() 在 Excel 與 Python 之間介接。 xl()此函數接受 Excel 物件,例如範圍、資料表、查詢和名稱。

您也可以使用函數直接 xl() 在 Python 儲存格中輸入參照。 例如,若要參照儲存格 A1 ,請使用 xl("A1") ,針對範圍 B1:C4 ,請使用 xl("B1:C4")。 對於標題名為 MyTable 的資料表,請使用 xl("MyTable[#All]", headers=True)。 [ #All] 規範可確保在 Python 公式中分析整個資料表,並確保 headers=True 正確處理資料表標題。 若要深入了解 [#All] 等規範,請參閱 搭配 Excel 表格使用結構化參照

下圖顯示 Excel 中的 Python 計算將儲存格 A1B1 的值相加,而在儲存格 C1 中傳回 Python 結果。

使用自訂 Python 函數 xl () 在 Excel 和 Python 之間進行介面。

公式列

使用資料編輯列進行類似程式碼的編輯行為,例如使用 Enter 鍵建立新的行。 使用向下箭號圖示展開資料編輯列,以一次檢視多行程式碼。 您也可以使用鍵盤快速鍵 Ctrl+Shift+U 來展開資料編輯列。 下列螢幕擷取畫面顯示資料編輯列展開以檢視多行 Python 程式碼之前和之後的情況。

展開資料編輯列之前:
...

展開資料編輯列之後:

展開資料編輯列以查看更多程式碼行。

秘訣

如需更大的程式碼編輯空間和功能,例如文字著色和 IntelliSense,請使用 Excel 中的 Python 程式碼編輯器

輸出類型

使用資料編輯列中的 Python 輸出功能表來控制傳回 Python 計算的方式。 將計算傳回為 Python 物件,或將計算轉換為 Excel 值並直接輸出到儲存格。 下列螢幕擷取畫面顯示傳回為 Excel 值的 Python 公式。

秘訣

您也可以使用快顯功能表來變更 Python 輸出類型。 開啟右鍵功能表,然後前往 Python 輸出,然後選取所需的輸出類型。

使用 Python 輸出功能表在輸出類型之間切換。

下列螢幕擷取畫面顯示與上一個螢幕擷取畫面相同的 Python 公式,現在會以 Python 物件的形式傳回。 當公式以 Python 物件的形式傳回時,儲存格會顯示卡片圖示。

注意

傳回至 Excel 的公式結果會轉換為最接近的 Excel 對應值。 如果您打算在未來的 Python 計算中重複使用結果,建議您將結果作為 Python 物件傳回。 以 Excel 值傳回結果,可讓您針對值執行 Excel 分析,例如 Excel 圖表、公式和條件式格式設定。

當資料以 Python 物件傳回時,儲存格會顯示 Python 卡片圖示。

Python 物件在儲存格內包含其他資訊。 若要檢視其他資訊,請選取卡片圖示以開啟卡片。 卡片上顯示的資訊是物件的預覽,這在處理大型物件時很有用。

Excel 中的 Python 可以將許多類型的資料作為 Python 物件傳回。 Excel 中的一個有用的 Python 資料類型是 DataFrame 物件。 若要深入了解 Python DataFrames,請參閱 Excel DataFrames 中的 Python

匯入外部資料

您在 Excel 中使用 Python 處理的所有資料都必須來自工作表或 Power Query。 若要匯入外部資料,請使用 Excel 中的 [取得 & 轉換] 功能來存取Power Query。 如需詳細資訊,請參閱使用 Power Query 匯入 Excel 中的 Python 資料

重要

為了保護您的安全性,Python 中的常見外部資料函數,例如 pandas.read_csvpandas.read_excel,與 Excel 中的 Python 不相容。 若要深入瞭解,請參閱 資料安全性和 Excel 中的 Python

計算順序

傳統的 Python 語句會從上到下計算。 在 Excel 中的 Python 儲存格中,Python 陳述式會執行相同的動作 - 它們會從上到下計算。 但在 Excel 中的 Python 工作表中,Python 儲存格會以列優先順序計算。 儲存格計算會在從欄 A 到欄 XFD) 的列 (執行,然後跨越工作表的每一列。

Python 陳述式是排序的,因此每個 Python 陳述式都隱含相依於計算順序中緊接在它前面的 Python 陳述式。

在工作表中定義和參照變數時,計算順序很重要,因為您必須先定義變數才能參照變數。

重要

列優先計算順序也適用於活頁簿內的工作表,並以活頁簿內工作表的順序為基礎。 如果您使用多個工作表來使用 Excel 中的 Python 來分析資料,請務必在分析該資料的儲存格和工作表前面的儲存格和工作表中包括資料和任何儲存變數。

重新計算

當 Python 儲存格的相依值變更時,會循序重新計算所有 Python 公式。 若要暫停 Python 重新計算並改善效能,請使用 部分計算手動計算 模式。 這些模式可讓您在準備好時觸發計算。 若要變更此設定,請移至功能區並選取 [公式],然後開啟 [計算選項]。 接下來,選擇所需的計算模式。 部分計算手動計算模式會暫停 Python 和運算列表的自動重新計算。

在 Python 開發期間停用活頁簿中的自動重新計算可以改善效能和個別 Python 儲存格計算速度。 不過,您必須手動重新計算活頁簿,以確保每個 Python 儲存格的正確性。 有三種方法可以在 部分計算手動計算 模式下手動重新計算活頁簿。

  1. 使用鍵盤快速鍵 F9
  2. 移至功能區中的 [公式]> 立即計算
  3. 移至具有過時值且以刪除線格式顯示的儲存格,然後選取該儲存格旁邊的錯誤符號。 然後從功能表中選取 [立即計算 ]。

錯誤

Excel 中的 Python 計算可能會傳回 #PYTHON!#BUSY!#CONNECT! 之類的錯誤給 Python 儲存格。 若要深入了解,請參閱 疑難排解 Excel 中的 Python 錯誤