我基本上是使用文档(https://openpyxl.readthedocs.io/en/stable/validation.html)中的openpyxl
复制了DataValidation
上的示例
唯一的区别是我将showDropDown
参数设置为True
。不幸的是,这没有任何区别,即当我打开Excel工作表时,我看不到下拉菜单。事实上,它根本没有被启用(比较屏幕截图)
from openpyxl import Workbook
from openpyxl.worksheet.datavalidation import DataValidation
# Create the workbook and worksheet we'll be working with
wb = Workbook()
ws = wb.active
# Create a data-validation object with list validation
dv = DataValidation(
type="list", formula1='"Dog,Cat,Bat"', allow_blank=True, showDropDown=True
)
# Optionally set a custom error message
dv.error = "Your entry is not in the list"
dv.errorTitle = "Invalid Entry"
# Optionally set a custom prompt message
dv.prompt = "Please select from the list"
dv.promptTitle = "List Selection"
# Add the data-validation object to the worksheet
ws.add_data_validation(dv)
dv.add(ws["A1"])
wb.save(filename="dropdown_issue.xlsx")
显然,
showDropDown
是hide_drop_down
的别名。设置showDropDown=False
就可以了这太令人困惑了!不久前在https://foss.heptapod.net/openpyxl/openpyxl/-/issues/1336已经开始发行一期
相关问题 更多 >
编程相关推荐