可以将子表的路径改为根据当前行的Project manager动态生成如下所示:subtables_path = rCUsersLOH2HZDesktop20236 email sendingSubTables # 定义子表文件夹的路径for i row in dfiterrows # 遍历 Excel 文件的每一行并附加相应的子表 pm_name = rowProject manage
以下代码段是根据该行的Project manager动态生成对应的子表路径,并将其作为附件发送给该Project manager的作用:
pm_name = row['Project manager']
excel_path = os.path.join(subtables_path, f'{pm_name}.xlsx')
if os.path.exists(excel_path):
xlsxpart = MIMEApplication(open(excel_path, 'rb').read())
xlsxpart.add_header('Content-Disposition', 'attachment', filename=f'{pm_name}.xlsx')
msg.attach(xlsxpart)
smtpObj.sendmail(sender, pm_email, msg.as_string()) # 发送邮件给该Project manager
else:
print(f'Subtable for {pm_name} not found')
这段代码通过获取当前行的Project manager名字,将其作为子表的文件名,并与子表文件夹路径拼接成完整的子表路径。如果该路径存在,则将该文件作为附件添加到邮件中,并发送给该Project manager。如果该路径不存在,则输出一条警告信息
原文地址: https://www.cveoy.top/t/topic/htUm 著作权归作者所有。请勿转载和采集!