如何在最大化外部组时保持内部轮廓组隐藏

问题描述 投票:2回答:1

我编写了一个python脚本,它通过XlsxWriter Outlines and Grouping功能对Excel文件的行进行分组。

我的文件有两组,一组嵌套在另一组中。这是一个最小的例子:

import xlsxwriter

workbook = xlsxwriter.Workbook('outline.xlsx')
worksheet = workbook.add_worksheet()

worksheet.set_row(1, None, None, {'level': 1, 'hidden': True})
worksheet.set_row(2, None, None, {'level': 2, 'hidden': True})
worksheet.set_row(3, None, None, {'level': 2, 'hidden': True})
worksheet.set_row(4, None, None, {'level': 1, 'hidden': True})

workbook.close()

这会生成处于“隐藏”状态的两个组。当我最大化第一组时,第二组(内部)组也最大化。

当外部组最大化时,如何防止内部组最大化?

我知道,实现这一目标的唯一方法是最大化组,然后手动最小化内部组和外组。保存,关闭和重新打开时,组最大化外部组时不会最大化。所以Excel显然有办法以某种方式存储这些信息。

python excel xlsxwriter
1个回答
2
投票

您需要将collapsed属性设置在正确的级别。请参阅XlsxWriter文档的Working with Outlines and Grouping部分。

这是一个工作示例:

import xlsxwriter

workbook = xlsxwriter.Workbook('outline.xlsx')
worksheet = workbook.add_worksheet()

worksheet.set_row(1, None, None, {'level': 1, 'hidden': True})
worksheet.set_row(2, None, None, {'level': 2, 'hidden': True})
worksheet.set_row(3, None, None, {'level': 2, 'hidden': True})
worksheet.set_row(4, None, None, {'level': 1, 'hidden': True, 'collapsed': True})

workbook.close()

输出:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.