WPS用Python写自定义公式

wils
wils

创作者俱乐部成员

今天要介绍的是xloil这个库,只需要简单写一个py,就可以在wps里使用自定义公式,还可以通过xlosql公式直接写sql查询,速度比xlwings快

下面介绍安装办法:

  • 先下载embed版32位的python,比如python-3.8.10-embed-win32.zip,解压

  • 修改python38._pth,删除import site前面的井号,保存

  • 下载get-pip,放到python.exe所在目录,在cmd里执行python get-pip.py

  • 这里不用执行官方文档里的xloil install,因为它是用来配置Excel的,我们手动改ini

  • 进入share\xloil目录,修改xloil.ini文件

  • XLOIL_PATH='C:\Users\Administrator\Desktop\python-3.8.10-embed-win32\share\xloil',这里改成解压缩python所在的目录

  • LoadModules=["xloil.xloil_ribbon"],这里改成LoadModules=[]

  • PYTHONEXECUTABLE='''C:\Users\Administrator\Desktop\python-3.8.10-embed-win32\python.exe''',这里改成解压缩python所在的目录

  • 打开wps表格,在加载项里浏览"C:\Users\Administrator\Desktop\python-3.8.10-embed-win32\share\xloil\xlOil.xll",加载后,就可以使用xlo的公式了

  • 注意,这里没有设置python的环境变量,且没有把xloil.ini安装到AppData\Roaming\xlOil里,这样有利于分发给其他人用,只需要把embed python这个目录压缩,发给别人,别人解压后,修改ini里指向python的路径,就可以加载xll后使用

  • 自定义的py文件可以放到share\xloil里,然后在xloil.ini里修改LoadModules=["你的py文模块名"]

需要注意的是,appdata里的xloil.ini会优先被加载,所以如果你没有安装excel,就不要执行xloil install命令,否则需要优先修改appdata里的ini

另外,如果你安装了多个python版本,环境变量PATH需要注意

海南省
浏览 1494
3
9
分享
9 +1
7
3 +1
全部评论 7
 
dhzgfchx
提示无效加载项
· 广东省
回复
wils
wils

创作者俱乐部成员

Python是不是32位的? 现在正在用,应该没啥问题的
· 广东省
回复
 
厚积、薄发
11
· 山东省
回复