配置Office Excel运行Python宏脚本
Posted connect
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置Office Excel运行Python宏脚本相关的知识,希望对你有一定的参考价值。
基本环境
名称 | 版本 |
---|---|
操作系统 | Windows 10 x64 |
Office | 2016 |
安装Python
1.下载Python安装包
登录https://www.python.org/downloads/windows/进行下载
Python2.x或Python3.x均可,推荐Python3.x(因为2020年1月1日起Python2就停止服务了...)
2.安装Python
安装前,勾选Add Python 3.x to PATH
选项。安装完毕之后,在Windows控制台可直接使用python
命令。
3.检查是否安装成功
按Win+R
,打开运行
,输入PowerShell
,打开命令行。
输入python -V
,查看Python版本号。
4.安装PythonWin32库
Python2.x 按以下方式安装
pip install pypiwin32 -i https://mirrors.aliyun.com/pypi/simple/
Python3.x 按以下方式安装
pip install pywin32 -i https://mirrors.aliyun.com/pypi/simple/
安装ExcelPython
1.从https://sourceforge.net/projects/excelpython/files/处,下载ExcelPython
或点击此处直接下载
2.新建一个Excel文件,打开可在标签栏显示ExcelPython
标签
3.打开Excel选项——信任中心——信任中心设置——宏设置——安全性,选中“信任对于VBA工程对象模型的访问”,按确定即可。
测试安装是否正确
1.将创建的data.xlsx
文件另存为data.xlsm
宏文件。
2.回到Excel,点击ExcelPython
标签的Setup ExcelPython
按钮
3.桌面上会出现一个名为xlpython
的文件夹,以及一个与*.xlsm
文件同名的*.py
文件。
4.打开data.py
编辑,写入以下内容
from xlpython import *
import random
@xlfunc
def getRandomBirth():
y = random.randint(1980, 2000)
m = random.randint(1, 12)
d = random.randint(1, 28)
return str(y)+'/'+str(m)+'/'+str(d)
@xlfunc
def getAge(d):
_today = [ 2019, 8, 30 ]
_list = str(d).split('/')
age = _today[0] - int(_list[0])
if _today[1] < int(_list[1]):
age -= 1
elif _today[1] == int(_list[1]):
if _today[2] < int(_list[2]):
age -= 1
else:
pass
else:
pass
return age
5.回到Excel中,点击ExcelPython
标签的Import Python UDFs
按钮
6.使用Python中定义的函数
在输入框中输入=getRandomBirth()
效果如图
7.在Excel中使用定义的第二个函数
效果如图
至此,可以使用Python进行Excel宏的开发
以上是关于配置Office Excel运行Python宏脚本的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式执行Microsoft Excel Office脚本?
我在excel中使用VBA宏程序时,报错无法执行,为啥!前提,程序没有问题,因为单位机器运行良好