我有一张excel表,带有数据验证属性 - 列表。
我需要创建column_name字典和相关的下拉列表值。
例如:{A:[a1,a2,a3],B:[b1,b2],C:[c1,c2,c3,c4]}。
有多个如何在excel中嵌入数据验证列表的示例, 但我怎么读呢?
我尝试过简单的代码:
from openpyxl import load_workbook
excel = load_workbook('test.xlsx')
sheet = excel.get_sheet_by_name('RequiredFormat')
for row in sheet.iter_rows():
for cell in row:
print(cell.value)
input("Proceed ?")
我检查了单元格的可用选项。
但没有任何内容可以说明数据验证或列表。
有办法吗?
答案 0 :(得分:2)
您目前无法读取现有数据验证。阅读 Openpyxl documentation
答案 1 :(得分:-2)
这是我将要用来读取列表值和哪个单元格的代码快照
tstlst = ws.data_validations.dataValidation
print('---')
print(tstlst)
print('---')
nr = 0
for tst2 in tstlst:
nr += 1
print(str(nr) + " : " + str(tst2))
tst3 = tst2.sqref
print('sqref: ' + str(tst3))
tst4 = tst2.formula1
print('list: ' + tst4)
也许这有帮助
这会为我在 A13 中的数据验证列表生成以下输出
2 :
sqref:A13
列表:"val1,val2,val3"