我已经在目标Excel列中将单元格格式设置为'Text‘。但是,当将字符串写入此列时,pandas.to_excel将格式更改为“常规”,最终列以空白单元格结束,空单元格的格式为“文本”,非空白单元格的格式为“常规”。有没有办法把数据写成“文本”而不是“常规”?
def exportData(df, dstfile, sheet):
book = load_workbook(dstfile)
writer = pd.ExcelWriter(dstfile, engine='openpyxl', date_format='dd/mm/yyyy', datetime_format='mm/dd/yyyy hh:mm')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df.to_excel(writer, header=False, startrow=2, index=False, sheet_name=sheet)
writer.save()
发布于 2020-05-18 21:25:29
您可以使用following method遍历单元格。
要设置为TEXT
格式的单元格只需使用:
cell.number_format = '@'
这将在Excel中将单元格格式设置为TEXT
。
也许有一种方法可以直接在Pandas中的ExcelWriter
中完成,但我对此并不陌生,也许有些更了解的人也会编辑这个选项的答案。
发布于 2020-12-01 21:13:04
您需要做的就是将pandas中的数据保存为'object'
(文本),如下所示:
df = pd.DataFrame(data=d, dtype=object)
在此之后,如果您使用pandas to_excel
方法导出到Excel中,它将作为文本存储在Excel中。
https://stackoverflow.com/questions/61864632
复制相似问题