首页 文章

Xlwings安全的Excel范围作为Python列表

提问于
浏览
1

我需要在Python中导入Excel范围作为列表 . 我想出了以下基本代码 .

import xlwings as xw

r2 = xw.sheets('Tabelle1').range('A1').value # last row of range

r2 = int(r2)

r2 = str(r2)

r1 = 'B3:B' 

r3 = r1 + r2
InputData = [xw.sheets('Tabelle1').range(r3).value]

当我在Spyder环境中启动代码时,此代码完全正常 . 我将在变量资源管理器中看到变量 InputData 作为List . 但是,当我使用Xlwings工具从Excel / VBA启动脚本时,变量 InputData 将不会显示在变量资源管理器中 .

任何想法我怎么能修改这个,所以 InputData 变量将始终显示为列表,无论我如何启动脚本?

1 回答

  • 1

    任何Python安装的核心都是解释器 . 如果您正在使用Windows机器,则解释器是一个名为 python.exe 的可执行文件 . 它是实际运行Python代码的软件 .

    您可以通过多种不同方式将代码提供给解释器 . 一种方法是通过Spyder应用程序 . Spyder应用程序实际上是一个 Build 在解释器之上的人性化界面 . Spyder应用程序将您的Python命令转发给解释器,让解释器运行它,然后收集解释器生成的任何输出(例如,您可以在Spyder的变量资源管理器中查看的计算变量值) .

    但Spyder应用程序只是使用Python解释器的许多可能方法之一 . 您也可以(根据我的理解,这是您正在寻找的)使用Excel应用程序将Python代码提供给解释器并处理所有输出 . 在这种情况下,Excel是Python解释器顶部的接口,而不是Spyder(即根本不需要Spyder) .

    这种使用Excel(使用VBA脚本)进行所有控制和与Python解释器通信的方法在 xlwings 网站上的example files中得到了很好的证明 . 它甚至包括一个数据库操作的例子(使用SQLite数据库)我建议下载它们并使用它们 . 然后转到 xlwings documentation herehere以详细了解这些示例中发生的情况 .

相关问题