用Python实现Excel内合同到期前,发送邮件提醒
工作中经常碰到会有财务同事有一个合同台账的Excel表格,定期在合同到期前她们会发个提醒邮件给你,他们在想如果能做到自动提醒就好了,于是我用Python写了段代码,帮助他们实现这个功能。
下面这个是Excel的内容例子:
***这段代码可以用于excel表格中合同到期前每隔30天,60天,90天,自动调用outlook发送邮件提醒的功能,其他类似于提醒的功能也可以使用,有如下问题需要注意:
1.准备做成选择路径的方式,目前还不行。
2.Excel的每个sheet的H、L和M列不能删除或移动,L列“Today”和M“距离到期日天数”里面有公式取值,不要修改,H列“合同终止日期”的内容可以根据需要修改。
3.Excel中sheet的合同可以新增,但是需要符合上述的格式
4.可以增加sheet,或者修改sheet的名字
5.程序运行时因为要调用outlook,所以请同时在本地登录outlook邮箱
6.config.txt文件内存放收件人的邮箱地址,用分号“;”隔开
7.config.txt,autosendmail.exe,合同台账.xlsx三个文件需要放在同一个目录下
8.可以编译成exe文件运行
9.可以使用计划任务设置每天定时运行***
具体代码如下:
# -*- coding: utf-8 -*-
"""
Module 合同到期前,发送邮件提醒,避免遗漏处理
"""
import os
import xlrd #读取xlsx
import win32com.client as win32 #调用outlook
import openpyxl #写入xlsx
from datetime import datetime
from win32com.client import Dispatch #读取excel公式
def main():
sNow = datetime.now().date() #获取当天的日期
todayToexcel(sNow)
just_open(filePath())
wb = xlrd.open_workbook(filename=f