我现在有一个熊猫数据,我正在导入一个已经格式化的excel工作表。在工作簿中的另一个工作表上,我使用Excel数据验证下拉列表。
下面是我的当前代码:
file= "Test.xlsm"
book = load_workbook(file, read_only=False, keep_vba=True)
writer = pd.ExcelWriter(file, engine='openpyxl', mode='a')
writer.book = book
writer.sheets = {ws.title: ws for ws in book.worksheets}
df.to_excel(writer, sheet_name='UnitDB', startrow = 3, starcol =1, index=False, header = False)
writer.save()
程序成功地执行,除了我收到的警告。
UserWarning: Data Validation extension is not supported and will be removed.
在我刚刚写入数据的Excel工作簿中,我注意到数据验证列表的其他工作表中的所有实例都已被删除。
我知道这可能是openpyxl在无法理解数据验证方面的一个限制,但是是否有一种方法可以让openpyxl忽略这一点,这样我的当前数据验证就能够保持原样了吗?
谢谢!
发布于 2021-12-28 22:33:15
我能够通过在公式名称管理器中创建一个变量来绕过这个错误,该变量包含了我最初在数据验证工具中使用的单元格的范围。然后,在进行数据验证时,我只输入了=myvariablename,而不是单元格的范围。
https://stackoverflow.com/questions/70513128
复制相似问题