我正在尝试从使用openpyxl创建的excel工作表中删除网格线,但它无法正常工作。 我这样做:
wb = Workbook()
ws = wb.get_active_sheet()
ws.show_gridlines = False
print ws.show_gridlines
wb.save('file.xlsx')
该代码打印'False',但保存的文件显示网格线。
答案 0 :(得分:8)
openpyxl
问题跟踪器中有一个相关的issue。另外,根据源代码show_gridlines
只是一个完全没有影响的工作表类属性。只需观察问题即可获得更新。
作为替代解决方案,请尝试新的和令人敬畏的xlsxwriter模块。它能够隐藏工作表上的网格线(参见docs)。这是一个例子:
from xlsxwriter.workbook import Workbook
workbook = Workbook('hello_world.xlsx')
worksheet = workbook.add_worksheet()
worksheet.write('A1', 'Hello world')
worksheet.hide_gridlines(2)
workbook.close()
答案 1 :(得分:8)
这是在2015年确定的。
以下是推荐的解决方案(来自issue的说明)
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.sheet_view.showGridLines
True
ws.sheet_view.showGridLines = False
wb.save("gridlines.xlsx")
请注意,您应键入ws.sheet_view.showGridLines
而不是 。ws.showGridLines