网站首页 > 技术文章 正文
偶然在知乎上看到一个问题,问能否在excel中调用python代码:
觉得很有意思,于是查了一下资料,发现python的xlwings模块可以插入excel中,像VBA一样运行,这对广大python爱好者来说简直是福音
下面给大家详细介绍一下,如何在excel中调用python代码
第一步:在excel中加载xlwings模块
关于wlxings的使用,前面已经发过,具体参考python自动化办公|批量处理Excel文件的利器-xlwings,这里不再赘述
首先将xlwings模块作为excel功能区的选项卡
依次点击“文件-选项”,打开如下对话框:
点击“信任中心-信任中心设置=宏设置”,勾选“信任对VBA工程对象模型的访问”:
点击功能区“开发工具-加载宏”,勾选Xlwings:
如果没有Xlwings,可以点击“浏览”,选择xwlings安装目录下的xlwings.xlam文件,加载进去就OK了
这时候就能在excel的功能区看到xlwings模块了
第二步:导入并调用python代码
利用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()函数:
你觉得python和VBA哪个更好用?欢迎在评论区留言。
猜你喜欢
- 2025-03-10 北京大学教授亲自编写的32个Python实战项目,建议熟练编写
- 2025-03-10 Python是什么?有何作用?
- 2025-03-10 1次订单系统迁移,头发都快掉完了...
- 2025-03-10 Python爬虫-面向知乎的答案提取和图片下载
- 2025-03-10 Python 3.12 目标:还可以更快
- 2025-03-10 大数据告诉你知乎上的帅哥美女都集中在哪个行业(附Python代码)
- 2025-03-10 有人说,Python比C语言难?该怎么反驳
- 265℃Python短文,Python中的嵌套条件语句(六)
- 264℃python笔记:for循环嵌套。end=""的作用,图形打印
- 263℃PythonNet:实现Python与.Net代码相互调用!
- 259℃Python实现字符串小写转大写并写入文件
- 257℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 117℃原来2025是完美的平方年,一起探索六种平方的算吧
- 98℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 90℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)