開始使用 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 中啟用 Python 的 Excel 工作簿,儲存格中顯示綠色 PY 圖示。

結合 Python 與 Excel 儲存格及範圍

要在 Python 儲存格中參考 Excel 物件,請確保 Python 儲存格處於編輯模式,然後選擇你想包含在 Python 公式中的儲存格或範圍。 這會自動將你選擇的儲存格或範圍地址填入 Python 儲存格。

秘訣

使用鍵盤快捷鍵 F2 在 Python 儲存格中切換 Enter 模式和編輯模式。 切換到編輯模式可以編輯 Python 公式,切換到 Enter 模式則可以用鍵盤選擇額外的儲存格或範圍。 想了解更多鍵盤快捷鍵,請參考 Excel 中的 Python 鍵盤快捷鍵

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

你也可以直接在 Python 儲存格輸入參考,並用這個 xl() 函式。 例如,參考儲存格 A1 時使用 xl("A1") ,範圍 B1:C4 則使用 xl("B1:C4")。 對於標頭為 MyTable,請使用 xl("MyTable[#All]", headers=True)[#All] 指定符確保整個資料表在 Python 公式中被分析,並確保headers=True資料表標頭被正確處理。 欲了解更多關於像 [#All] 這樣的指定詞,請參見 Excel 表格中使用結構化參考

下圖展示了 Python 在 Excel 中計算的過程,將儲存格 A1B1 的值相加,Python 的結果則返回在 儲存格 C1

使用自訂的 Python 函式 xl () 來在 Excel 和 Python 之間介接。

公式列

使用公式列來做類似程式碼的編輯行為,比如用 Enter 鍵建立新行。 使用向下箭頭圖示展開公式列,可以一次查看多行程式碼。 你也可以用鍵盤快捷鍵 Ctrl+Shift+U 來展開公式列。 以下截圖顯示了展開前後的公式列,以顯示多行 Python 程式碼。

在展開公式欄之前:
...

展開公式條後:

展開公式列可以看到更多程式碼行數。

秘訣

如果想要更大的程式碼編輯空間,以及像文字著色和 IntelliSense 這類功能,可以使用 Python 的 Excel 程式碼編輯器

輸出類型

在公式列中使用 Python 輸出選單來控制 Python 計算的回傳方式。 可以將計算結果以 Python 物件形式回傳,或將計算轉換成 Excel 值,直接輸出到儲存格。 以下截圖顯示 Python 公式以 Excel 值回傳。

秘訣

你也可以用右鍵選單更改 Python 的輸出類型。 打開右鍵選單,進入 Python 輸出,然後選擇想要的輸出類型。

使用 Python 的輸出選單切換輸出類型。

以下截圖顯示與前截圖相同的 Python 公式,現在以 Python 物件回傳。 當公式以 Python 物件回傳時,儲存格會顯示一個卡片圖示。

注意

公式結果回傳為 Excel 值後,會被轉換成最接近的 Excel 對應值。 如果你打算在未來的 Python 計算中重複使用這個結果,建議將結果以 Python 物件的形式回傳。 以 Excel 值回傳結果,可以對該值執行 Excel 分析,例如圖表、公式和條件格式。

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

Python 物件包含儲存格內的額外資訊。 要查看更多資訊,請選擇卡片圖示打開卡片。 卡片上顯示的資訊是物件的預覽,處理大型物件時非常有用。

Excel 中的 Python 可以以 Python 物件的形式回傳多種資料。 一個有用的 Python Excel 資料型別是 DataFrame 物件。 想了解更多關於 Python DataFrames 的資訊,請參閱 Excel 中的 Python DataFrames

匯入外部資料

你在 Excel 裡用 Python 處理的所有資料,都必須來自你的工作表或 Power Query。 要匯入外部資料,請使用 Excel 中的「取得 & 轉換」功能來存取Power Query。 欲了解更多資訊,請參閱使用 Power Query 匯入 Excel 中的 Python 資料

重要

為了保護你的安全,Python 中常見的外部資料函式,如 pandas.read_csvpandas.read_excel,與 Excel 中的 Python 不相容。 欲了解更多,請參閱 資料安全與 Excel 中的 Python

計算順序

傳統的 Python 陳述式是從頭到尾計算。 在 Python 的 Excel 儲存格中,Python 語句也是一樣的——從上到下計算。 但在 Python 的 Excel 工作表中,Python 儲存格是依列-大修順序計算。 儲存格的計算會從 A 欄到 XFD) 的一列 (,然後在工作表的每一列都進行。

Python 陳述式是有序的,因此每個 Python 陳述式都隱含依賴於計算順序中緊接其前的 Python 陳述式。

計算順序在定義和引用工作表變數時非常重要,因為你必須先定義變數,才能參考它們。

重要

列-主要計算順序也適用於工作簿內的工作表,且是根據工作簿中工作表的順序而定。 如果你用多個工作表在 Excel 裡用 Python 分析資料,務必在分析資料的儲存格和工作表中包含資料和變數。

重新計算

當 Python 儲存格的依賴值改變時,所有 Python 公式會依序重新計算。 若要暫停 Python 重新計算並提升效能,請使用 部分計算手動計算 模式。 這些模式讓你在準備好時觸發計算。 要更改這個設定,請到功能區選擇 「公式」,然後開啟 「計算選項」。 接著,選擇想要的計算模式。 部分計算手動計算模式暫停了 Python 與資料表的自動重新計算功能。

在 Python 開發過程中關閉工作簿中的自動重新計算功能,可以提升效能及各 Python 儲存格的計算速度。 不過,你必須手動重新計算工作簿,以確保每個 Python 儲存格的準確性。 在 部分計算手動計算 模式下,手動重新計算工作簿有三種方式。

  1. 使用鍵盤快捷鍵 F9
  2. 請前往>「計算公式」,在色帶中。
  3. 切換到一個帶有過時值、並以劃線格式顯示的儲存格,然後選擇該儲存格旁的錯誤符號。 然後從選單中選擇 「立即計算 」。

錯誤

Python 在 Excel 計算中可能會回傳像 #PYTHON!#BUSY!#CONNECT! 等錯誤給 Python 儲存格。 欲了解更多,請參閱 「Excel中故障排除Python錯誤」。