excel内嵌python,PyXLL库 | Excel与Python的完美结合(附使用文档)

excel内嵌python,PyXLL库 | Excel与Python的完美结合(附使用文档)什么是 PyXLL PyXLL 是一个 Excel 扩展插件 使开发人员可以使用 Python 代码扩展 Excel 的功能 PyXLL 使 Python 成为 Excel 工作表的高效 灵活的后端 并允许您使用熟悉的 Excel 用户界面与信息基础结构的其他部分进行交互 使用 PyXLL 您的 Python 代码可以使用任何常见的 Python 发行版 例如 Anaconda Enthought 的 Canopy 或任何其他从 2 3 到 3 9 的

什么是PyXLL?

PyXLL是一个Excel扩展插件,使开发人员可以使用Python代码扩展Excel的功能。

PyXLL使Python成为Excel工作表的高效,灵活的后端,并允许您使用熟悉的Excel用户界面与信息基础结构的其他部分进行交互。

使用PyXLL,您的Python代码可以使用任何常见的Python发行版(例如Anaconda,Enthought的Canopy或任何其他从2.3到3.9的CPython发行版)在Excel中运行。

由于PyXLL运行您自己的完整Python发行版,因此您可以访问所有第三方Python软件包,例如NumPy,Pandas和SciPy,并可以从Excel中调用它们。

用例示例包括:

调用现有的Python代码以在Excel中执行计算

在VBA中进行太慢或繁琐的数据处理和分析

从数据库等外部系统中提取数据

查询大型数据集以在Excel中显示摘要级别的数据

向Excel用户公开内部或第三方库

ab08cd4519fdee5c02cb9f2ab8705d2e.png

?如过程中有疑问,欢迎进群讨论~?

需要《PyXLL库使用文档》的同学,可以关注下列公众号?(非本公众号),后台回复「杀死办公软件」可以获得全部资源哦~

进入上方公众号后发送:

杀死办公软件

cdf0e13ffdce748ab85cd06eff45d28b.gif

它是如何工作的?

PyXLL根据其config文件中的规范在Excel中运行Python代码 ,您可以在其中配置Python的运行方式以及PyXLL应该加载的模块。当PyXLL启动时,它会加载这些模块并公开某些已经用PyXLL装饰器标记的功能。

例如,可以用Python编写用于计算第n个斐波那契数的Excel用户定义函数(UDF),如下所示:

1from pyxll import xl_func

2

3@xl_func

4def fib(n):

5    “Naiive Fibonacci implementation.”

6    if n == 0:

7        return 0

8    elif n == 1:

9        return 1

10    return fib(n-1) + fib(n-2)

该xl_func-decorated功能fib由PyXLL检测并暴露于Excel作为用户定义的函数。

b8328be60268a3c06b3941c830670e66.png

用Python实现的Excel中的斐波那契函数。

Excel类型会根据可选的函数签名自动转换为Python类型。在没有简单转换的地方(例如,从方法返回任意类实例时),PyXLL将Python对象引用存储为Excel中的单元格值。当使用对该单元格的引用调用另一个函数时,PyXLL会检索该对象并将其传递给该方法。PyXLL会跟踪引用对象的单元格,以便一旦Excel不再引用该对象,便可以在Python中取消引用。

开始之前

现有用户可能想研究PyXLL 5的新增功能。从早期版本升级的内容应为“从早期版本升级的重要说明”。如果您喜欢边看边学,也许您会喜欢我们的视频指南和教程。

请注意,您不能混合使用32位和64位版本的Excel,Python和PyXLL –它们都必须相同。

a54854fad6a592a5afa062fc32a2f811.png

根据安装说明安装外接程序,并确保在必要时更新配置文件。有关通过Anaconda或Miniconda安装的特定说明,请参阅 将PyXLL与Anaconda一起使用。

一旦安装了PyXLL,您将可以尝试下载中包含的示例工作簿。下载中还包括示例工作簿中使用的所有代码。

请注意,所有错误都会写入日志文件,因此,如果您遇到困难,请始终在日志文件中查找问题所在,如果有疑问,请与我们联系。

下一步

在安装完PyXLL之后,下面的练习将向您展示如何编写您的第一个Python用户定义函数。

安装PyXLL

首先,请按照初次安装PyXLL的说明进行操作。

您可以使用PyXLL的命令行工具将PyXLL加载项安装到Excel中:

1>> pip install pyxll

2>> pyxll install

在Excel中调用Python函数

PyXLL的主要功能之一是能够从Excel工作簿中的公式调用Python函数。

首先从创建一个新的Python模块并编写一个简单的Python函数开始。要将功能公开给Excel,您要做的就是将xl_func装饰器应用到它。

1from pyxll import xl_func

2

3@xl_func

4def hello(name):

5    return “Hello, %s” % name

保存模块并再次编辑pyxll.cfg文件,以将新模块添加到要加载的模块列表中,并将包含模块的目录添加到pythonpath中。

1[PYXLL]

2modules = 

34[PYTHON]

5pythonpath = 

转至加载项在Excel菜单并选择PyXLL – >刷新。这会导致PyXLL重新加载config和Python模块,从而允许发现新的和更新的模块。

现在,在工作表中,您会发现可以使用新的Python函数键入公式:

1=hello(“me”)

使用PyCharm,Eclipse还是Visual Studio?

通过将它们作为调试器附加到正在运行的PyXLL,您可以使用Eclipse,PyCharm,Visual Studio和其他IDE交互式调试在PyXLL中运行的Python代码。有关详细信息,请参见我们的博客文章“调试Python Excel加载项”。

如果您在代码中犯了任何错误,或者函数返回了错误,则可以检查日志文件以找出错误所在,对代码进行必要的更改,然后重新加载PyXLL。

29dc2fa97a89a7fd40d3119113808d30.png

用Python编写的简单Excel函数。

其他资源

该文档说明了如何使用PyXLL的所有功能,并包含完整的API参考。在下载中包含的示例中也很好地展示了PyXLL的功能。这些是开始更多地了解PyXLL可以做什么的好地方。

可以在PyXLL的GitHub页面上找到更多示例代码。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223199.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午2:37
下一篇 2026年3月17日 下午2:38


相关推荐

  • wsastartup的使用

    wsastartup的使用wsastartup 的使用 在开发的过程之中 如果你想要在应用程序中使用 Socket 的话 你就必须先调用 wsastartup 函数 WSAStarup 是 windows 网络编程接口软件下的一个命令 只有学会灵活地使用 WSAStarup 你才有可能编写出一个优秀的 socket 程序出来 wsastartup 的使用案例代码清单 include stdwsa h

    2026年3月16日
    1
  • phpStrom隐藏.idea文件[通俗易懂]

    phpStrom隐藏.idea文件[通俗易懂]phpStrom隐藏.idea文件

    2022年4月24日
    79
  • Linux traceroute命令详解

    Linux traceroute命令详解traceroute 我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径 当然每次数据包由某一同样的出发点 source 到达某一同样的目的地 destination 走的路径可能会不一样 但基本上来说大部分时候所走的路由是相同的 Options 4UseIPv4 6

    2026年3月19日
    2
  • 小米笔记本、小米游戏本重装原装出厂镜像教程-有百度盘的提取码

    小米笔记本、小米游戏本重装原装出厂镜像教程-有百度盘的提取码转:【新的干货儿】小米笔记本、小米游戏本重装原装出厂镜像教程原文转自:http://bbs.xiaomi.cn/t-36117135作者主页:http://bbs.xiaomi.cn/u-detail-426023643转载仅供学习,感谢原作者分享。【重装前须知】有百度盘的提取码1.本教程完全为个人观点,不代表官方,仅供参考。2.重装系统需谨慎,由此带来的任何问题与本人无…

    2022年6月27日
    301
  • 微信小程序 小程序源码包括后台完整版分享

    微信小程序 小程序源码包括后台完整版分享需要的留邮箱免费发!版权归作者所有,任何形式转载请联系作者。作者:执波仔丶(csdn博客)最新收集的60个微信小程序源码分享+开发视频教程最新收集的60个微信小程序源码分享+开发视频教程最新收集的60个微信小程序源码分享+开发视频教程小程序源码使用教程(源码文件夹自带安装教程,本教程不一定通用):第一步:百度搜索下载微信开发者工具(最新1.02.1801081,支持mac)第二步:打开开发工具客…

    2022年7月20日
    25
  • 【零基础】MT4量化入门一:跑一个简单的boll

    【零基础】MT4量化入门一:跑一个简单的boll一、前言  今天开始研究MT4了,MT4是大大有名的外汇交易和量化软件,使用一种叫做MQL的语言来开发量化程序(跟C比较像)。因为是外国人做的,用的也大部分是外国人,使用起来不是很顺手,跟极星各有优劣吧。这里我就先逐步讲一下MT4的使用,然后再简单跑一个boll指标,最后汇总下使用心得。二、安装  1、下载MT4  不熟悉这东西,连安装都是个麻烦事儿。MT4官网好找一搜就有,下载链…

    2022年5月23日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号