終于,在Excel里也能直接寫python了!
大家好,我是一行
之前在處理數(shù)據(jù)的時候,最開始都是在excel里處理,后來當數(shù)據(jù)量上了一個級別后就用python導入excel文件接著處理了
很多人會說,excel有自帶VBA語言,可以用那個來處理呀
不好意思,VBA不僅處理數(shù)據(jù)速度慢而且還非常麻煩
但是,現(xiàn)在可以直接在excel里使用python了,非常的nice
1安裝
具體方法就是在excel里安裝PyXLL插件來使用Python代碼
這個運行的python是完整的python發(fā)行版,所以可以調(diào)用所有的第三方python包,例如numpy、Pandas 和 Scipy 等等
先用pip安裝Pyxll
pip?install?pyxll
然后使用Pyxll來安裝excel插件,但是不能混用32位和64位版本
pyxlll?install
最后安裝pyxll-jupyter軟件包
pyxll?install?pyxll-jupyter
安裝之后重啟excel就可以看到選項卡里多一個jupyter按鈕,單擊按鈕便可以在excel里創(chuàng)建一個新的notebook面板
熟悉的樣子又回來了有木有!

2使用方法
PyXLL最重要的功能就是可以在excel里調(diào)用python函數(shù)
首先創(chuàng)建一個新的Python模塊并編寫一個簡單的Python函數(shù), 并將這個模塊加入python路徑里,來給excel使用
from?pyxll?import?xl_func
@xl_func
def?hello(name):
????return?"Hello,?%s"?%?name
這樣在excel里輸入公示得到結(jié)果
=hello("me")
當然,這里只是一個簡單的示范,之后無論是畫圖還是數(shù)據(jù)模型都可以直接在Python里寫好函數(shù),然后在excel里應(yīng)用
你看,像畫圖這樣的常見處理,完全可以在excel里執(zhí)行完成了

3最后
除了上面這個工作表函數(shù)功能,這個插件還有很多其它功能:
用python來設(shè)置單元格格式 excel和python共享事實數(shù)據(jù) 使用python進行圖表繪制 使用內(nèi)置QT自定義用戶界面 用python調(diào)用宏功能
等等等等,還有很多其它常見的功能可以參考這個插件的官方文檔
https://www.pyxll.com/docs/userguide/index.html
以后當其他人再發(fā)來excel讓你處理數(shù)據(jù)時,你都不用打開python編輯器來導入、導出數(shù)據(jù),直接excel里就可以完成,非常的人性化
我是一行,技術(shù)永不眠,我們下期見!
當然Python相關(guān)的電子書我也給整理好了在下面??

