确定Excel单元格内容是否超过Python中的默认大小

我们有脚本将数据写入Excel,然后从Excel文件自动创buildPDF报告。 在某些情况下,由于电池的长度,其内容将被切断,如下所示。

在这里输入图像说明

我想写一些代码,将所有的数据写入Excel后,但在创buildPDF之前调整单元格高度。 我有一个Python脚本,将自动换行,加倍高度,并提供中心垂直alignment,我指定行号(即10和11)

from win32com.client import Dispatch excel = Dispatch('Excel.Application') def main(): CellAdjust() def CellAdjust(): affected_rows = [10,11] no_of_sheets = excel.Sheets.Count for each_sheet in range(no_of_sheets): for row in affected_rows: excel.Worksheets(each_sheet+1).Rows(row).VerticalAlignment = 2 excel.Worksheets(each_sheet+1).Rows(row).WrapText = True excel.Worksheets(each_sheet+1).Rows(row).RowHeight = 31.5 if __name__ == '__main__': main() 

在这里输入图像说明

我不想对所有行执行这个操作,因为它会将剩余字段的外观破坏掉。 那么有没有办法确定一个单元格的内容是否超出默认的宽度,如果是的话,应用函数? 还是有更好的方法来自动化呢?

我将使用您的单元格对象的Value方法来获取单元格的值,然后检查其宽度。 如果显示的宽度太大,请调用CellAdjust函数。 你可能不得不花点时间来找出使用的最佳数字。