python
def QhDfToExcel(QhPathExel,QhDfData,QhSheetName):
"""
存储数到Excel
"""
logger.info("【ToExcel明细数据】拆分后明细数据如下!QueHui!\n{}".format(QhDfData))
if not os.path.exists(QhPathExel):
QhDfData.to_excel(QhPathExel,index=False,sheet_name=QhSheetName)
logger.info("【ToExcel明细】Excel表不存在,创建新表-{}!QueHui!".format(QhSheetName))
else:
QhWriterA = pd.ExcelWriter(QhPathExel, engine='openpyxl',mode="a",if_sheet_exists="replace")
QhDfData.to_excel(QhWriterA,index=False,sheet_name = QhSheetName)
QhWriterA._save()
QhWriterA.close()
logger.info("【ToExcel明细】Excel存在,新增或覆盖Sheet表数据成功!QueHui-{}!".format(QhSheetName))
以上方法的逻辑是
1、excel不存在则创建的方式写入数据
2、excel存在则:
2.1、sheet不存在则新增写入
2.2、sheet存在则覆盖原来sheet写入
主要说明两个参数:
mode: "a"新增,"w"直接写入 (不会新增sheet)
if_sheet_exists:"replace" 如果sheet存在则覆盖写入,"new"如果sheet存在则新增一个sheet,sheet名加序号