如何在Excel中直接調(diào)用Python代碼,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、新化網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制、成都商城網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為新化等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
偶然在知乎上看到一個(gè)問題,問能否在excel中調(diào)用python代碼:
覺得很有意思,于是查了一下資料,發(fā)現(xiàn)python的xlwings模塊可以插入excel中,像VBA一樣運(yùn)行,這對廣大python愛好者來說簡直是福音
下面給大家詳細(xì)介紹一下,如何在excel中調(diào)用python代碼
關(guān)于wlxings的使用,前面已經(jīng)發(fā)過,具體參考python自動(dòng)化辦公|批量處理Excel文件的利器-xlwings,這里不再贅述
首先將xlwings模塊作為excel功能區(qū)的選項(xiàng)卡
依次點(diǎn)擊“文件-選項(xiàng)”,打開如下對話框:
點(diǎn)擊“信任中心-信任中心設(shè)置=宏設(shè)置”,勾選“信任對VBA工程對象模型的訪問”:
點(diǎn)擊功能區(qū)“開發(fā)工具-加載宏”,勾選Xlwings:
如果沒有Xlwings,可以點(diǎn)擊“瀏覽”,選擇xwlings安裝目錄下的xlwings.xlam文件,加載進(jìn)去就OK了
這時(shí)候就能在excel的功能區(qū)看到xlwings模塊了
利用Xlwings模塊的quickstart快速創(chuàng)建帶宏的工作蒲和python代碼文件,具體操作如下。
WIN+R輸入cmd打開命令行,用cd命令切換至你想要的路徑,在路徑下輸入命令“xlwings quickstart table”:
若出現(xiàn)如上信息,表示文件創(chuàng)建成功,可以在文件夾內(nèi)發(fā)現(xiàn)以下文件:
打開table.py文件,可以看到自動(dòng)生成的python代碼:
內(nèi)有main()和hello()函數(shù),可以實(shí)現(xiàn)相應(yīng)的功能
我們打開table.xlsm文件,依次點(diǎn)擊功能區(qū)“xlwings-Import Functions”,等加載完畢,在A1單元格輸入hello()函數(shù):
按回車:
這樣就實(shí)現(xiàn)了在excel中調(diào)用python自定義函數(shù)了
我們再定義一個(gè)函數(shù)even_to_odd,可以實(shí)現(xiàn)偶數(shù)變奇數(shù),代碼如下:
@xw.func def even_to_odd(x): if x%2==0: x=x-1 return x
放入table.py文件中并運(yùn)行,依次點(diǎn)擊功能區(qū)“xlwings-Import Functions”,等加載完畢,如下輸入even_to_odd()函數(shù):
看完上述內(nèi)容,你們掌握如何在Excel中直接調(diào)用Python代碼的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享文章:如何在Excel中直接調(diào)用Python代碼
網(wǎng)站鏈接:http://vcdvsql.cn/article14/jhepde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站營銷、商城網(wǎng)站、云服務(wù)器、企業(yè)網(wǎng)站制作、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)