
偶然在知乎上看到一个问题,再见中直问能否在excel中调用python代码:

觉得很有意思,接调于是再见中直查了一下资料,发现python的接调xlwings模块可以插入excel中,像VBA一样运行,再见中直这对广大python爱好者来说简直是接调福音
下面给大家详细介绍一下,如何在excel中调用python代码
关于wlxings的再见中直使用,前面已经发过,接调具体参考python自动化办公|批量处理Excel文件的再见中直利器-xlwings,这里不再赘述
首先将xlwings模块作为excel功能区的站群服务器接调选项卡
依次点击“文件-选项”,打开如下对话框:

点击“信任中心-信任中心设置=宏设置”,再见中直勾选“信任对VBA工程对象模型的接调访问”:

点击功能区“开发工具-加载宏”,勾选Xlwings:
 
如果没有Xlwings,再见中直可以点击“浏览”,接调选择xwlings安装目录下的再见中直xlwings.xlam文件,加载进去就OK了

这时候就能在excel的功能区看到xlwings模块了

利用Xlwings模块的quickstart快速创建带宏的工作蒲和python代码文件,具体操作如下。
WIN+R输入cmd打开命令行,源码下载用cd命令切换至你想要的路径,在路径下输入命令“xlwings quickstart table”:

若出现如上信息,表示文件创建成功,可以在文件夹内发现以下文件:

打开table.py文件,可以看到自动生成的python代码:

内有main()和hello()函数,可以实现相应的功能
我们打开table.xlsm文件,依次点击功能区“xlwings-Import Functions”,等加载完毕,在A1单元格输入hello()函数:


按回车:

这样就实现了在excel中调用python自定义函数了
我们再定义一个函数even_to_odd,可以实现偶数变奇数,代码如下:
@xw.func def even_to_odd(x): if x%2==0: x=x-1 return x放入table.py文件中并运行,依次点击功能区“xlwings-Import Functions”,等加载完毕,如下输入even_to_odd()函数:
云南idc服务商(责任编辑:系统运维)