我希望阻止excel滚动到特定的行/列。我有一张要放入excel的表格,表格范围之外的所有地方都需要无衬线的背景。但是,通过放置未加衬线的背景,这将在滚动条中包括未加衬线的部分。因此,我想防止滚动超出表格的限制。
我尝试了冻结窗格,但是表扩展到了屏幕范围之外(大约50行和列),并且冻结窗格将不允许在整个表中滚动。
答案 0 :(得分:1)
这取决于您在Excel中的处理方式。
一种方法是隐藏所有未使用的行和列。为了隐藏大量行,您需要使用Excel优化来隐藏行而不设置每一行(大约一百万行)。要在XlsxWriter中执行此操作,可以使用set_default_row()
方法。
列不需要此优化,可以使用set_column()
隐藏。
这里是一个例子:
import xlsxwriter
workbook = xlsxwriter.Workbook('hide_row_col.xlsx')
worksheet = workbook.add_worksheet()
# Write some data.
worksheet.write('D1', 'Some hidden columns.')
worksheet.write('A8', 'Some hidden rows.')
# Hide all rows without data.
worksheet.set_default_row(hide_unused_rows=True)
# Set the height of empty rows that we do want to display even
# if it is the default height.
for row in range(1, 7):
worksheet.set_row(row, 15)
# Columns can be hidden explicitly. This doesn't increase the file size.
worksheet.set_column('G:XFD', None, None, {'hidden': True})
workbook.close()
输出: