首页 > 解决方案 > 有没有办法在excel中缓存python模块?

问题描述

我目前正在学习 python 库 xlwings,目标是能够在 excel 中使用 python 函数。为了测试它,我在 excel 中创建了一个按钮,该按钮运行一个 Visual Basic 脚本,该脚本执行一个 python 函数,该函数将所选单元格的值加一:

Sub MyMacro()
    RunPython ("import LearnXlwings; LearnXlwings.add_one(" & "'" & ActiveCell.Address & "'" & ")")
End Sub

我的python代码如下:

import xlwings

def add_one(cell):
    wb = xlwings.Book.caller()
    wb.sheets[0].range(cell).value += 1

此函数有效,所选单元格的值(如果是数字)加一。但是,运行需要相当长的时间,我怀疑这是因为线路

import xlwings

有没有办法可以使用 VBA 脚本导入 xlwings,然后将其缓存,这样我的宏就不必在每次运行时重新导入它?

标签: pythonexcelvbaimportxlwings

解决方案


推荐阅读