1、从官网安装python3
2、因为pip直接安装有点慢,先用pqi换软件源。按Win+R键,运行"cmd",打开命令提示符窗口。执行"pip install pqi",安装pqi。执行"pqi ls",查看可用的源。执行"pqi use tuna",自己选一个源用。
3、使用pip安装需要的库。按Win+R键,运行"cmd",打开命令提示符窗口。执行"pip install xlwings",安装xlwings。
4、如果按官方的步骤,需要以addin的方式倦虺赳式安装xlwings插件,之后打开xlsx会多出一个工具标签,自己在py里写方法后,要点击import udfs按钮,导入自定义函数后,才能在单元格使用 租涫疼迟=func( 这样的形式调用;而官方给出的自定义插件方法,可能因为我没安装addin会报错。所以下面使用编辑standalone版本的xlsm,并另存为xlam加载宏的方式,实现一次配置后本机Excel不用再次配置直接用函数。
5、按Win+R键,运行"cmd",打开命令提示符窗口。执行"xlwings quickstart wh_xxx --standalone",新建一个wh_xxx文件夹,里面有xlsm和py文件。
6、打开文件夹里的xlsm文件:重命名"_xlwings.conf"到"xlwings.conf&qu泠贾高框ot;,即去掉sheet2名字开头的一个下划线,表示使用独立的配置文件。Interpreter_Win后面是python的路径,默认是python,能用就不改。Use UDF Server后面最好把FALSE改成TRUE,始终开启后台服务加快速度。
7、在Excel里点击,文件>选项>自定义功能区,选中主选项卡中的开发工具,开启主界面的开发工具标签。再点击,选项>信任中心>信任中心设置>宏设置,选中信任对VBA工程对象模型的访问。确认,回到Excel主界面。
8、点击Excel主界面的开发工具标签,点击控件里的插入,插入一个表单按钮,找空白处画个按钮,指定宏选中ImportPythonUDFsToAddin,点击确定,之后保存xlsm文件。
9、打开py文件:按照里面的hello方法写自定义方法,详见官方文档。
10、回过头再打开xlsm文件,点击你画的按钮1,这之后如果你打开开发工具里的vb编辑界面,左侧模块里会多出个xlwings_udfs,唁昼囫缍这里有你刚才在py里定义的函数的入口,它是在你点击按钮1后自动生成的,所以只要你改了py里的方法,就需要再点一次这个按钮。回到Excel主界面,点击文件,另存为,格式选xlam加载宏,文件夹会自动跳转到%HOMEPATH%\AppData\Roaming\Microsoft\AddIns\,记住这个文件夹,保存。将同一文件夹下同名的py文件复制到上面记住的文件夹里。记住:下次你修改了py函数,需要再点击xlsm里的按钮,另存为xlam,并复制新py到文件夹。
11、在Excel主界面点击,开发工具,Excel加载项,选中你创建的Wh_Xxx,确定,关闭上述所有窗口。
12、之后新开一个Excel,随便xlsx还是xlsm,选个单侍厚治越元格输入 =hello("xxx") ,可以直接用pytho荏鱿胫协n写的hello函数,再试试自带的 =sql("select a.* from a",A1:B3) 这是xlwings自带的sql函数,注意A1B1要有正规的表头。像上面这样配置的好处是,一次配置,之后本机用Excel不用点击导入UDFs,甚至不用安装xlwings的addin,直接就能用python写好的自定义函数。