今天介绍一个叫 xlpython 的库,通过它我们可以用 Python 来开发 Excel 的宏脚本,真正实现在 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.注意:光理论是不够的。这里顺便免费送大家一套2020最新python入门到高级项目实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,还可以跟老司机交流讨教!

2.安装Python

安装前,勾选 AddPython3.xto 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或[点击此处]直接下载

相关推荐:《Python教程》

2.新建一个Excel文件,打开可在标签栏显示 ExcelPython标签

3.打开Excel选项——信任中心——信任中心设置——宏设置——安全性,选中“信任对于VBA工程对象模型的访问”,按确定即可。

测试安装是否正确

1.将创建的 data.xlsx文件另存为 data.xlsm宏文件。

2.回到Excel,点击 ExcelPython标签的 SetupExcelPython按钮

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标签的 ImportPythonUDFs按钮

6.使用Python中定义的函数在输入框中输入 =getRandomBirth()

效果如图:

7.在Excel中使用定义的第二个函数

效果如图:

至此,可以使用Python进行Excel宏的开发。

最后注意:光理论是不够的。这里顺便免费送大家一套2020最新python入门到高级项目实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,还可以跟老司机交流讨教!

本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

python调用excel宏_用Python如何开发Excel宏脚本?新手必学相关推荐

  1. python调用dll函数_从Python调用DLL函数

    我想从Python调用DLL中的函数.但我有个错误:"Attribute Error function not found" 这是我的代码:import os import cty ...

  2. python调用matlab函数_从 Python 调用 MATLAB 函数的三种方法

    0. 实验环境Ubuntu 16.04 Matlab R2015b 1. 借助于 mlab 库 安装方法非常简单,只需一行命令 sudo pip install mlab 即可. import num ...

  3. python调用usb设备_用Python与USB设备通信

    假设您使用Linux和libusb-1.0作为PyUSB的后端库.// Detach a kernel driver from an interface. // If successful, you ...

  4. python调用微信客户端_用Python编写的简化版微信客户端

    原标题:用Python编写的简化版微信客户端 原文:A simple WeChat client written in Python supports session persistence. 翻译: ...

  5. python 调用函数 开销_减少python中的函数调用开销

    我开发了一个应用程序,它模拟在网格中移动的N个机器人,这些机器人试图在有限的步骤中最大化访问的网格单元的数量,在目标点进行会议.这一切都正常,但是很慢.它目前是python numpy mathplo ...

  6. python调用matlab函数_从python调用MATLAB函数

    我知道这是一个老问题,已经得到答复. 但是我一直在寻找相同的东西(对于Mac),发现有很多选择与matlab交互的方法和成熟度不同. 这是我发现的: pymat 使用matlab引擎(libeng)进 ...

  7. python调用谷歌地图_使用Python调用谷歌地图并记录运动轨迹进行可视化

    本篇博文主要介绍了如何使用python来调用谷歌地图,并对北京的一个轨迹数据集进行可视化展示.该数据集包含在3年内收集的182个用户的GPS轨迹.我在这个演示中使用了用户001的数据. 博文会给出具体 ...

  8. python调用接口查询_基于Python的苹果序列号官网查询接口调用代码实例

    1.[代码][Python]代码 #!/usr/bin/python # -*- coding: utf-8 -*- import json, urllib from urllib import ur ...

  9. python调用扫描仪设备_在Python中使用串行端口从扫描仪读取输入

    这个问题似乎措辞不当.您可以使用Python的raw_input函数从标准输入中读取数据以提问,如果您知道设备通信的波特率,您可以从串行端口读取字节(否则您将收到垃圾邮件).从这个示例中,我不确定您到 ...

  10. python调用r语言_【Python调用第三方R包】【环境变量设置】Python 通过rpy2调用 R语言...

    [github有完整的软件包 ] 系统环境 python 2.7.4  32bit R 3.0.1  i386-w64-mingw32/i386 (32-bit) rpy2 2.3.7  32bit ...

最新文章

  1. Linux下redis的安装
  2. 热度直逼TensorFlow的深度学习框架,我用它画下女朋友最美的脸
  3. 【AndroidSupport】LinearLayoutCompat
  4. LeetCode-剑指 Offer 53 - II. 0~n-1中缺失的数字
  5. mysql二维数组vb_VBA链接MYSQL的帮助类
  6. java手机杀毒_Android项目实战_手机安全卫士splash界面
  7. Scala 元组(tuple)
  8. 【练习】使用事务控制语句
  9. 用了这个方法,您的备份数据再也不怕被勒索了(数据备份防止更改)
  10. 魔术师利用一副牌中的13张红桃c语言,魔术师的猜牌术(1) 魔术师利用一副牌中的13张黑桃 - 下载 - 搜珍网...
  11. 最强CNN语音识别算法开源了:词错率5%,训练超快,Facebook出品
  12. 【转】SpringMVC Controller 介绍
  13. ArcGIS Desktop软件安装和试用说明
  14. 『编程题全队』Alpha 阶段冲刺博客集合
  15. DVD-Cloner 2021 for mac(DVD光盘刻录工具)
  16. python continue和break同时用_Python学习笔记之Break和Continue用法分析
  17. OpenJDK构建工具IcedTea 1.7发布
  18. SAP无法下载excel
  19. CentOS7下collectd简单安装使用
  20. A. Busiest Computing Nodes

热门文章

  1. 新闻稿件媒体代发宣传2336803766
  2. 条码打印软件如何将excel表导入使用
  3. 模板的概念以及函数模板
  4. Deep Dream图像生成案例实践
  5. 自动驾驶入门技术(2) —— 车辆定位与高精地图
  6. 工具篇Flair之训练模型教程
  7. R语言dplyr包group_by函数和summarise_at函数计算dataframe计算不同分组的计数个数和均值(Summarise Data by Categorical Variable)
  8. 如何实现网站灰色调去色效果
  9. 今天成为CSDN会员了。
  10. 彻底关掉win10自动更新_电脑知识∣怎样彻底关闭win10自动更新功能?