常见情况
每到年底的时候,很多公司都可能为所有员工准备了一封信,内容包括绩效评估结果,调薪比例,最新工资等;
在进行校园招聘面试结束之后,HR也会大批量的给不同的候选人发送录用通知书;
这些批量发送的过程如果手动挨个进行邮件附件的插入,内容的书写,势必会非常消耗时间,如果时间紧迫,还可能被迫要加班。。。
解决思路遇到批量操作,首先想到的一般都是用宏的方法来操作,本案例分享代码及修改操作,不熟悉的小伙伴可以照着以下方法拿去即用。
步骤操作■ 邮件合并
邮件合并的步骤相信很多人都不会陌生,先来准备好需要的Word文档,比如录用通知书,空出后期所有需要填写文字的部分,如:
再准备进行链接的Excel工作簿,准备好后期要填入的内容部分,如:
然后通过邮件合并的方式将Word与Excel进行链接,在Word中将Excel里的相应字段插入到需要填写的部分(这部分内容的步骤省略,不会的小伙伴可以去我的《Excel从起步到起飞》中找到学习内容):
■ 插入代码
在Word文档中,利用Alt F11调出代码框,将已经准备好的代码复制粘贴到其中:(继续往后看,后面有具体修改的讲解)
完成之后,这个代码窗口可以关闭了,然后将word文档另存为后缀名为.docm的格式。
这个代码包含了两部分的内容,第一是批量将Word文档以Excel中的姓名字段为名称保存为单个的word文档;第二个是批量将这些单个的Word文档转换为pdf的文件进行保存。
在Excel文档中,同样利用快捷键ALT F11调出代码窗口,双击左侧的Thisworkbook,将代码复制粘贴至其中,如:
这段代码的作用就是将生成后的PDF文档以附件的方式插入到邮件之中,并进行邮件的批量发送(含邮件主题,收件人,邮件正文等)。
■ 文件位置
了解代码之前,先说一下案例我文件的位置放置,后面大家都可以根据自己的习惯进行修改。
这个案例我是放在桌面上的,桌面上建立了一个文件夹,如:
打开这个文件夹后,文件的保存位置:
word文档放在这里了,新建了一个pdf的文件夹,后面生成的PDF文档都会放置在PDF的文件夹中,Excel的文件我也放置在PDF文件夹中了,如:
■ 代码解释 修改
因为每个人的电脑的用户名都不一样,所有这些文件如果在你自己的电脑中,你需要对文件的位置在代码中进行修改,word文档中的代码:
第一段:
红色框中标注的位置,也就是:C:\Users\demon\Desktop\批量转PDF文件并发送邮件
这部分内容请修改为你的word文档放置的位置,注意后面的“\”要保留!
第二段代码中涉及到文件的位置,同样要进行修改:
上述红框中最后一个是生成PDF文件后放置的位置,所以多了个pdf\字样,这个也根据你pdf想放置的位置来进行修改。
再来看Excel文件中的代码:
Cells(i,2)意思是第i行,第二列的单元格。
myitem.To = .Cells(i, 8)的意思是:
发送邮件给第i行第8列单元格中的收件人,因为收件人的邮箱是在Excel文档中对应的第8列,所有这里是8;
myitem.Subject = .Cells(i, 2)的意思是:
邮件的主题,这里的主题是放置在第2列中的,所有是2;
myitem.Body = .Cells(i, 1) & ",你好!" & vbNewLine & vbNewLine & .Cells(i, 7)的意思是:
邮件的正文,Cells(i,1)和Cells(i,7)表示的是对应单元格中的内容,文字部分大家可以修改成你们需要写的文字部分;
vbNewLine是换行的意思;
如果你嫌邮件挨个打开预览很麻烦,可以直接将上述代码中的display修改为send。不过还是建议大家在正式发送之前,预览检查一下比较稳妥,顶多就是挨个邮件点击一下发送按钮嘛。
■ 代码运行
上述全部完成之后,如何运行呢?
回到word文档中,在开发工具菜单栏中,点击宏,如:
弹出对话框中选择:myMailMerge
再点击右侧的运行,稍等片刻后,在PDF文件夹中你就会看到生成的对应的pdf文档了,如:
word完成他的使命后会自动关闭的,再来打开Excel文件,同样的方法,打开开发工具栏菜单,点击宏:
弹出对话框中选择:ThisWorkbook.sendemail,点击执行。
稍等片刻之后,邮件预览就自动出现了:
检查一下,如果没有毛病就发送吧。当然,还是我上述提到的,如果你要批量发送上百封邮件,内容无误的话,请相信系统,直接可以无须预览进行发送的,毕竟点100多下发送邮件按钮也是很辛苦的一件事情。
能看到最后,说明你真的有需要,那么直接公众号(查查成长营)回复:邮件发送
获取源文件进行运用吧。
好了,如果你还有不明白的地方,可以直接留言或私信,大家一起交流学习。
,