自动调整列宽以适应 panda 生成的 Excel 文件中的内容
Auto-adjust column width to fit the content in panda generated Excel files
我正在使用 pandas.to_excel()
生成 xlsx
个文件。
在我的Win10上默认使用openpyxl
因为没有安装xlsxwriter
。我的问题涉及两个选项。
生成的 xlsx
文件的列对于内容来说太小了。我必须通过 Excel.
来调整它们
这是生成的 sheet 的样子
这是 Excel 本身自动调整宽度后的样子。
我希望 pandas/openpyxl/xlsxwriter 自己进行自动调整。对此有选择或方法吗?
我知道唯一可靠的方法是在 xlwings 中使用 .autofit()
:
import pandas as pd
import xlwings as xw
filename = r"test.xlsx"
df = pd._testing.makeDataFrame()
df.to_excel(filename)
with xw.App(visible=False) as app:
wb = xw.Book(filename)
for ws in wb.sheets:
ws.autofit(axis="columns")
wb.save(filename)
wb.close()
我正在使用 pandas.to_excel()
生成 xlsx
个文件。
在我的Win10上默认使用openpyxl
因为没有安装xlsxwriter
。我的问题涉及两个选项。
生成的 xlsx
文件的列对于内容来说太小了。我必须通过 Excel.
这是生成的 sheet 的样子
这是 Excel 本身自动调整宽度后的样子。
我希望 pandas/openpyxl/xlsxwriter 自己进行自动调整。对此有选择或方法吗?
我知道唯一可靠的方法是在 xlwings 中使用 .autofit()
:
import pandas as pd
import xlwings as xw
filename = r"test.xlsx"
df = pd._testing.makeDataFrame()
df.to_excel(filename)
with xw.App(visible=False) as app:
wb = xw.Book(filename)
for ws in wb.sheets:
ws.autofit(axis="columns")
wb.save(filename)
wb.close()