xlwings 写入特定 sheet 的范围

xlwings writing to range on specific sheet

我一直在尝试在工作簿上为某个 sheet 写一些列表,但没有成功。我的代码是:

import xlwings as xw
from xlwings import Range
from xlwings import Book
wkb = xw.Book('Master_v3.xlsm')
sht = wkb.sheets['Control']
sht.Range('A1').value = some_list

这给了我错误:

*** AttributeError: 'Sheet' object has no attribute 'Range'

当我使用“0”而不是指定 sheet 名称(即 "Control")时,这似乎有效。我哪里错了?

谢谢

xw.Range是活动应用的活动书sheet上Range的快捷方式

当你像你一样完全限定时,那么 range 是 sheet 对象的一个​​属性,它遵循 Python 属性的小写命名约定:

sht.range('A1').value = some_list

即头脑 xlwings.Rangemysheet.range.

试试这个解决方案:

import xlwings
wb = xlwings.Book(r"filename")
wb.sheets['Sheet1'].range((5,1),(195,13)).value = ...