- 在 Excel 中使用 Python,您可以直接在儲存格中使用 pandas 或 matplotlib 等程式碼和函式庫,並在 Microsoft 雲端中安全地運行。
- 整合是透過 =PY 函數、公式列和 xl() 函數來管理的,它將 Excel 區域與 Python 邏輯和不同類型的輸出結合。
- 重新計算、行排序和手動/部分模式是控制 Python 單元格效能和依賴關係的關鍵。
- 雖然該功能正在向所有用戶推出,但像 OpenPyXL、pandas、xlwings 或 PyXLL 這樣的函式庫仍然是使用 Python 處理 Excel 的強大替代方案。

如果你每天都使用電子表格,你可能聽說過「Excel 可以解決一切問題」這句話。現在,隨著…的出現 Python 直接整合到 Excel 中這種說法不夠全面:無需離開工作簿即可創建高級分析、強大的自動化功能和專業級視覺化效果。
近年來,Python 已確立了其作為…的地位。 數據分析、自動化和數據科學的旗艦語言雖然 Excel 仍然是企業中的瑞士軍刀,但微軟決定將兩者結合起來,打造單一的使用者體驗:Excel 中的 Python。您將在下方看到 Excel with Python 究竟是什麼?如何使用它?它能為你做什麼?還有哪些替代方案? 同時,這項整合將擴展到所有用戶。
Excel 中的 Python 具體是什麼?
Excel 中的 Python 是一項功能 微軟365 讓 直接在 Excel 儲存格中編寫 Python 程式碼 然後在微軟雲端運行這段程式碼,並將結果傳回電子表格。無需安裝解釋器、奇怪的插件或進行複雜的配置:只需使用 Excel 的特殊功能即可。
整合包含一系列 Anaconda 提供的 Python 函式庫專為數據分析、統計和視覺化而設計。其中包括一些知名的庫,例如: pandas、matplotlib 和 seaborn 或使用統計模型,無需離開 Excel 即可操作大型表格並產生進階圖表。
對使用者而言,這種體驗與使用公式非常相似:您在單元格中輸入 Python 表達式,Excel 將其發送到… 微軟雲 進行計算,並將結果傳回工作表中。在尚不支援計算的平台上,可以打開工作簿,但… 使用 Python 的單元格將顯示錯誤 嘗試重新計算時。
其理念是你可以利用 兩全其美:Excel 熟悉的介面 它擁有表格、圖表和透視表,以及 Python 科學生態系統的強大功能,可以將分析提升到一個新的水平。
Excel 中 Python 的可用性與需求
目前,Excel 中已支援 Python。 Excel 用於 Windows網頁版Excel和Excel 免費下載前提是您擁有相容的 Microsoft 365 訂閱。微軟正在逐步推出此功能,因此並非所有用戶都能同時獲得此功能。
在其他設備上,例如 iPad 版 Excel iPhone o Android目前程式碼無法執行。您可以開啟包含 Python 程式碼的工作簿,甚至可以看到已計算的結果,但如果重新計算,則會發生錯誤。 Python 單元格中的特定錯誤.
在第一階段,該功能是以如下方式提供的: 公開預覽 透過 Microsoft 365 預覽體驗計劃,特別是透過 Beta 頻道。想要在其他使用者之前體驗該功能的使用者必須… 加入內部會員計劃 並選擇合適的測試版通道等級來接收更新。
微軟的目標是逐步將 Python 整合到 Excel 中。 Microsoft 365 標準訂閱不過,這項新增功能還附帶一個進階功能的補充授權模式,例如進階運算和額外的重新運算模式。
關於法律條件,此功能的使用受以下條款約束: Microsoft 365 通用條款:適用於 Microsoft 365 家用版或個人版使用者的 Microsoft 服務協議,以及適用於商業版或教育版訂閱的產品條款,包括即使功能處於預覽階段也適用的資料保護條款(GDPR 和安全條款)。
如何在 Excel 中啟動並開始使用 Python
對於已經擁有相容訂閱的使用者來說,在 Excel 中啟動並執行 Python 非常簡單: 你不需要在自己的電腦上安裝任何與Python相關的軟體。所有操作均透過 Excel 本身的介面和微軟的伺服器進行協調。
最直覺的方法是打開一本空白的書,翻到標籤頁 功能區上的“公式” 然後按下按鈕 插入 Python這樣,你就告訴 Excel,活動儲存格將包含 Python 程式碼而不是傳統公式。
另一種更快的方法是將函數寫在單元格中。 =PY進入 =PY 然後從自動完成選單中選擇該功能(使用箭頭和 Tab 鍵或新增左括號)。 =PY(),細胞變成了 Python 單元格準備接收驗證碼。然後,您可以輸入您的 腳本 一行或多行。
當儲存格包含 Python 程式碼時,Excel 會顯示一個 獨特的 PY 圖標 儲存格本身以及選取儲存格後顯示的公式欄中都會出現此視覺標記。此標記可協助您區分哪些儲存格包含傳統公式,哪些儲存格執行雲端 Python 邏輯。
微軟提供名為「導覽」的服務 《Excel中的Python入門》文中一步一步地解釋如何使用這個新函數開始分析數據,從簡單的案例到使用更強大的函式庫。
將 Excel 儲存格與 Python 程式碼結合使用
這種整合的關鍵之一在於,你可以 直接在 Python 程式碼中使用 Excel 區域、表格和對象為此,需要一個名為「自訂函數」的功能。 xl()它充當了連接兩個世界的橋樑。
在編輯 Python 單元格時,您可以使用滑鼠選擇… Excel 儲存格或區域 您可以選擇使用任何一種方式。 Excel 會自動插入以下方式的呼叫: xl() 有了適當的參考,就無需手動輸入,並且在處理更複雜的範圍時可以減少錯誤。
如果您喜歡自己編寫程式碼,可以直接指定引用。例如,要存取儲存格內容。 A1 從 Python 的角度來看,只需編寫以下程式碼即可。 xl("A1")而對於範圍 B1:C4 你會用 xl("B1:C4")在 Excel 中使用 Python xl() 它不僅接受等級,而且 表、查詢和已定義名稱如果您使用 pandas 或 openpyxl,則此函數是 Python 讀取和處理電子表格流程的補充。
對於使用 Excel 表格格式建立的表格,您可以將結構化參考與此函數結合使用。例如,對於名為「表格」的表格 我的表格 你可以使用 xl("MyTable", headers=True)該修飾符表示您要處理 整張桌子以及參數 headers=True 確保Python能夠正確解析列標題。
透過這種方法,可以建立公式,使 Python 程式碼能夠處理來自以下資料: 特定單元格或整個範圍 並將結果傳回到另一個單元格,例如,Python 將 A1 和 B1 的值相加,在 C1 中顯示輸出,充分利用了與工作表的整合。
Python公式列和程式碼編輯
當你在單元格內直接編寫程式碼時,不可避免地會遇到這樣的情況: 單行程式碼不足以應對更複雜的腳本。在這種情況下,Excel 的公式列就成了你的小型程式碼編輯器。
公式欄允許您使用 在程式碼中,按下 Enter 鍵即可建立新行。在組織函數、循環或鍊式庫呼叫時,這非常有用。您不必局限於難以閱讀和維護的無窮無盡的程式碼行。
此外,您也可以點選圖示展開公式列。 向下箭頭 位於您的右側。展開後會顯示一個更高的區域,您可以在那裡看到 同時運行多行Python程式碼幾乎就像是在頁面頂部整合了一個極簡主義編輯器。
如果你願意 鍵盤快捷鍵存在一種特定的組合: Ctrl+Shift+U 它允許您在普通視圖和展開的工具列之間切換。這樣,您可以根據需要折疊或展開編輯區域,而無需將手從鍵盤上移開。
實際上,這種擴展工具列使操作更加便捷。 稍長的腳本,包含幾句話這樣既能保持上下文可見,又能減少語法或縮排錯誤,因為不必在小視窗中進行編輯。
Python 輸出型別和物件在單元格中
在 Excel 中使用 Python 不僅傳回簡單的數字或文字;它提供了多種輸出選項,以滿足您的螢幕顯示需求。此行為由…控制。 公式欄中提供了輸出選單。 當你使用 Python 單元格時。
一種方法是將 Python 計算結果轉換為 原生 Excel 值就像使用普通公式計算出來的結果一樣。這在你想繼續使用時尤其有用。 用於處理資料的 Excel 函數和工具例如,用於填入資料透視表或套用條件格式。
另一種方法是指定公式應傳回一個值。 完整的 Python 對象在這種情況下,儲存格會顯示一個小卡片圖標,而不是簡單的數值。點擊該圖示會開啟一個預覽卡片,您可以在其中查看資料。 關於該物體的其他資訊當結果規模龐大或情況複雜時,這種方法尤其實用。
可以用這種方式處理的資料類型中最有趣的包括: pandas DataFrames這些數據框廣泛應用於數據分析。它們可以透過 Excel 介面查看和瀏覽,但同時保留了 Python 物件的特性,以便進行更高級的操作。
由於數據既可以傳回適用於 Excel 的數據,也可以保留為富對象,因此可以建立混合工作流程。 Python 負責處理繁重的處理工作。 (清理、建模、統計計算)而Excel負責處理其中的一部分。 演示、與其他公式的組合以及報告.
將外部資料匯入 Excel,使用 Python 進行分析。
在 Excel 中充分利用 Python 的關鍵在於: 所有由 Python 處理的資料必須來自電子表格本身或 Power Query。換句話說,Python 不會從本機電腦自行連接到外部資源。
從 Excel 外部匯入資訊(數據庫, CSV文件(雲端服務等),您必須使用以下功能: 「獲取與轉換」(Power Query) 從 Excel 匯入資料。此工具可讓您將資料匯入、轉換並載入到電子表格中,以便 Python 公式可以隨後使用這些資料。
Power Query 充當網關:您定義連線和轉換,最終結果會呈現在 Excel 表格中。 現在 Excel 中的 Python 可以消耗 透過函數引用的範圍或表 xl().
由此,架構就清晰地展現出來了: 外部資料透過 Power Query 進行管理。它們被整合到電子表格中,然後,Python 就派上用場,進行進階分析、視覺化或流程自動化。
這種分離還具有安全性和控制優勢,因為它將數據連接集中在一個元件中,Excel 已經使用權限、憑證和公司規則來處理這些數據,而 Python 程式碼則處理已經驗證並載入到工作簿中的資料。
Python 單元格之間的計算順序與依賴關係
在傳統的Python腳本中,指令會被執行。 從上到下,依序Excel 中的每個 Python 儲存格都遵循相同的邏輯:在儲存格中編寫的程式碼會按照行出現的順序執行。
然而,在電子表格中,規則有所不同。 Excel 會依照一定的順序遍歷儲存格。 主要排序方式為按行排序,從 A 列到 XFD 列然後逐行向下進行。 Excel 中的 Python 程式碼會適應這個計算順序,因此包含 Python 程式碼的儲存格會依照這個順序進行計算。
這意味著每個 Python 單元格都有一個 計算順序中對先前單元格的隱式依賴如果在一個儲存格中定義了一個變數或資料結構,並且想要在後面的儲存格中重複使用它,則必須確保計算順序保證首先執行定義該變數或資料結構的儲存格。
與人合作時,秩序尤其重要。 多個 Python 細胞相互連接的過程就像在任何程式語言中一樣,在嘗試使用變數之後再定義它會導致錯誤或不一致的結果。 程序設計但卻是在 Excel 的重新計算邏輯架構內進行的。
因此,在使用 Python 設計電子表格時,建議在組織單元格佈局及其內容時,應考慮以下因素: 什麼取決於什麼利用 Excel 依照已知模式重新計算此特性,並且可以根據需要控制重新計算的時間。
在 Excel 中使用 Python 進行重新計算和效能模式設定
每次使用 Python 程式碼變更一個或多個儲存格所依賴的值時,Excel 都可能會觸發異常。 自動重新計算所有受影響的公式這包括常規公式和 Python 單元格。在複雜的工作簿中,這可能會降低您的工作效率。如果您遇到運作緩慢的問題,本指南或許能幫到您。 修復運行速度極慢的 Excel 表格.
在開發或微調模型時,暫時中止 Python 的自動重新計算非常有用。 Excel 為此提供了以下功能: 部分計算模式和手動計算模式減少或停用 Python 資料表和公式的自動重新計算。
這些選項在選項卡中進行管理。 功能區中的“公式”,位於“計算選項”下您可以在這裡選擇最適合您的模式,無論是保持計算自動、部分限制計算,還是強制所有操作手動進行,直到您另行決定。
使用部分計算或手動計算時,請務必記住這一點。 當您需要更新結果時,請強制重新計算。您可以透過以下幾種方式實現:按 F9 作為鍵盤快捷鍵,請前往 公式 > 立即計算 在功能區中,或利用 Excel 在包含過期值的儲存格中顯示的警告(刪除線條文字格式和錯誤符號),並從中選擇。 “立即計算”.
這樣做的好處是,在用 Python 建立邏輯時,你可以更快地完成工作,而無需每次微小的更改都觸發完整的重新計算。但是,在根據結果做出決策時,請確保… 你已經重新計算了整本書。 這樣就不會有儲存格包含過時的資料。
在 Excel 中使用 Python 進行計算時常見的錯誤
與傳統公式一樣,Python 單元格可以返回 有助於診斷問題的具體錯誤最常見的錯誤代碼包括: #PYTHON!, #忙碌的! y #連接!每一種都與不同類型的問題有關。
錯誤 #PYTHON! 通常表示 程式碼本身存在問題 (例如,未處理的異常、語法錯誤或意外的資料類型。)檢查公式列中的腳本並使用更簡單的結構通常是找到原因的方法。
編碼 #忙碌的! 這表明計算仍在進行中,或者Python雲端服務正在運行。 正在處理請求有時候你只需要等待一會兒,特別是當計算量很大或書中包含許多鍊式 Python 公式時。
就其本身而言, #連接! 它與 微軟雲端連線問題這可能是因為您無法上網、網路被封鎖,或是Python服務當時無法使用。在這種情況下,檢查您的網路連線和企業配置至關重要。
微軟對這些程式碼進行了詳細的文件記錄,並提供了相關指南。 在 Excel 中解決特定的 Python 問題當您開始創建更複雜的解決方案並需要快速了解為什麼某個單元格停止正確計算時,這將非常有用。
Excel 中的 Python、安全性與雲端執行
你在單元格中編寫的所有 Python 程式碼都不會在你的電腦上運行,而是在一台電腦上運行。 託管在 Microsoft Cloud 上的 Python 語言標準版本在那裡,公式會被處理,輸入資料會被處理,結果會被傳送回裝置上開啟的 Excel 工作簿。
Excel 中使用的 Python 發行版是基於… Anaconda 提供的一組開源函式庫以安全且受控的方式打包。這意味著您無法隨意修改全域 Python 環境,但作為回報,所有使用者的體驗一致性和安全性都得到了保證。
您無需在電腦上安裝任何本機 Python 即可使用此功能。即使您已經自行安裝了 Python 及其函式庫, 這些本地化設定完全無效。 適用於在雲端 Excel 中使用 Python 的環境。
關於資料保護,Excel 中的 Python 遵循以下原則: 微軟 365 安全與隱私承諾這包括加密、存取控制和合規性。具體條款,例如個人資料處理和GDPR合規性,均在平台的合約文件中列明。
這種集中式執行模型也使微軟能夠提供 可透過附加許可證進行可選的保費計算此許可證可解鎖更多運算能力和更多重新運算選項,從而在資源密集型項目中提供更快的回應時間和更大的控制力。
利用 Python 在 Excel 中建立輔助駕駛:人工智慧服務於分析
微軟致力於將 Excel 與 Python 結合,其目標不僅限於運行程式碼;它還延伸到整合… 副駕駛, 助理 IA 整合到 Microsoft 365 中Copilot in Excel with Python 旨在幫助那些不精通任何程式語言的人。
此功能可讓您使用自然語言編寫請求,例如請求趨勢分析或客戶細分,並讓它運作。 Copilot 產生或建議必要的 Python 程式碼以及在 Excel 中建立視圖,以易於理解的方式顯示結果。
這樣一來,Python 的分析能力就得以普及,技術經驗較少的使用者也能獲得它。 從您的數據中獲得深刻見解 依靠人工智慧的建議,而更技術性的使用者則可以審查、調整或改進生成的程式碼。
在 Excel 中結合 Copilot 和 Python 的目標是將電子表格轉換為一個環境,在該環境中, la 人工智能 先進計算並存,加速 El Temppo 從原始資料到可執行決策所需的過程。
對於已經經常使用 Python 的人來說,Copilot 也可以作為… 支援更快地編寫重複程式碼建議使用一些沒有詳細記住的函式庫函數,或提出更有效率的方法來處理特定的分析問題。
在 Excel 中使用 Python 的實用優勢
拋開技術層面不談,這種整合究竟能為日常工作帶來什麼實際好處,這一點也很有趣。第一個主要優勢是能夠… 充分利用 Python 函式庫的功能 無需放棄許多公司已經用來儲存和組織資料的環境:Excel。
在 Excel 中使用 Python 非常簡單 清理、轉換、篩選和分組數據 否則,這些操作將需要複雜的公式、巨集或手動操作。像 pandas 這樣的工具正是為此類任務而設計的,現在已整合到普通電子表格使用者的日常工作流程中。
此外,您無需安裝任何其他軟體包即可開始使用:Excel 已包含所有必要的元件。 準備了一套常用的 Python 函式庫透過 Anaconda 生態系統,還可以整合許多其他功能,始終保持業務和安全的方法。
另一個優點是 將經典的Excel公式與Python腳本結合您可以使用 Excel 函數進行分析的某些部分(例如,標準財務計算),並讓 Python 處理統計模型、輕量級機器學習或更複雜的視覺化。
在協作方面,Excel 中的 Python 與 微軟團隊 y 展望這樣,您就可以在確保 Microsoft 365 安全性的同時,與同事分享書籍、程式碼和結果。同一個文件也可以作為分析和結論的文檔,供團隊其他成員參考。
Excel 中的 Python 與外部函式庫:連結這兩個世界的其他方法
雖然現在可以在 Excel 單元格中直接編寫 Python 程式碼,但多年來,彌合這兩個世界之間鴻溝的唯一方法是透過… 用於讀取和寫入 Excel 檔案的 Python 庫 或提供與桌面應用程式更緊密的整合。
如果由於任何原因,您目前無法在 Excel 中使用 Python,或者需要處理超出雲端整合範圍的情況,那麼在 Python 社群和商業環境中,您還有幾種成熟的替代方案可供選擇。
以下庫允許 自動產生報告、產生電子表格、修改現有文件 甚至可以建立可直接從 Excel 使用的自訂函數,從而在官方整合不斷發展的同時提供靈活性。
我們將回顧一些最常用的從 Python 操作 Excel 的方法,它們既可以作為微軟解決方案的補充,也可以作為替代方案,重點介紹: 每種方法的用途是什麼?在哪些情況下它可能更合適?.
這些庫大多是開源的,並且可以相互組合使用,這意味著您可以建立 高度先進的處理和報告工作流程 只要你熟悉在 Excel 之外運行腳本,就可以相對輕鬆地完成操作。
用於處理 Excel 的主要 Python 函式庫
OpenPyXL 它是最受歡迎的用於從 Python 操作 Excel 文件的庫之一。它面向現代工作簿,也就是基於 XML 的工作簿,例如 Excel。 .xlsx、.xltm、.xlsm 和 .xltx分別對應 Excel 2010 及更高版本。
使用 OpenPyXL,您可以 讀取現有工作表的內容,建立新工作表,寫入值 並修改檔案屬性,例如元資料、樣式、邊框或格式。當您需要根據外部資料自動定期產生 Excel 報表時,此功能尤其有用。
就其本身而言, 大熊貓 它可能是 Python 中最知名的資料分析函式庫,也為與 Excel 互動提供了非常方便的支援。透過諸如以下函數: 讀取excel y 脫穎而出可以從書籍中載入數據,並將分析結果匯出回電子表格。
熊貓擅長以下任務 表格清洗、轉換、聚合和合併如果分析的主要部分是在 Excel 之外完成的,而工作簿格式僅用作資料輸入或輸出的手段,甚至是作為向業務使用者交付資料的格式,那麼這種方式是理想的。
另一個非常有趣的選擇是 PyXLL這不僅僅是簡單的文件讀寫。 PyXLL 允許 註冊 Python 函數,使其在 Excel 中像原生函數一樣可見。整合到桌面環境中,讓您可以在電子表格中利用整個 Python 科學生態系統。
採用類似的方法, 超薄 提供了 直接在 Excel 單元格中編寫和運行 Python 程式碼它允許您定義自訂函數並操作書籍中的資料。它內建編輯器,並且可以從 Python 呼叫 VBA 函數,使其成為同時使用這兩種語言的強大工具。
更偏重閱讀, xlrd 多年來一直是參考標準 閱讀和 格式 .xls 文件 (Excel 的經典二進位格式)。雖然隨著時間的推移,它逐漸被更現代的選項所取代,並且對新格式的支援也有限,但在處理舊版工作簿時,它仍然是一個值得考慮的解決方案。
如果您關心的是打字速度, PyExcelerate 它針對快速生成電子表格進行了最佳化。當您需要…時,它是理想之選。 短時間內建立多個 Excel 文件例如,在自動產生大量報告的流程中。缺點是它側重於撰寫而非閱讀。
在數值計算領域, 數字貨幣 它並非專為 Excel 設計,但非常適合透過 CSV 檔案傳輸資料的工作流程。它允許 以極其高效的方式處理矩陣和向量執行複雜的數學運算,然後將結果儲存為 Excel 可以輕鬆讀取的格式。
最後, xlwings 它提供了Python和Excel之間非常強大的集成,以至於被認為是一種 Power Query 或 VBA 巨集的替代方案 它適用於多種任務。它允許您自動處理電子表格,與區域、圖表和控制進行交互,並提供免費的開源版本和提供額外支援和功能的專業版本。
透過將這些函式庫與 Excel 中新的官方 Python 整合,可以涵蓋所有內容。 從簡單的自動化到高級分析和報告項目根據每個團隊的需求和技術水準調整工具。
Python 進入 Excel 平台改變了你在電子表格中處理資料的方式:現在可以建立進階分析, 複雜的自動化和視覺化 保持熟悉的介面,依靠雲端執行、成熟的科學函式庫以及外部函式庫生態系統,當您需要超出微軟自身整合所提供的功能時,這些外部函式庫仍然非常有用。
對字節世界和一般技術充滿熱情的作家。我喜歡透過寫作分享我的知識,這就是我在這個部落格中要做的,向您展示有關小工具、軟體、硬體、技術趨勢等的所有最有趣的事情。我的目標是幫助您以簡單有趣的方式暢遊數位世界。