企业制作工资表-利用Excel+outlook批量快速发送电子邮件-。教学教材
- 格式:docx
- 大小:284.35 KB
- 文档页数:16
此工资群发必须在OFFICE OUTLOOK的基础上完成首先对OutLook进行设置打开OutLook,如下图,选择工具-账户设置OutLook设置完成。
为了保证能够正常收发邮件,建议用此账号直接收发邮件,以确保此账号设置正确。
首先建立如下格式工资表并保存,注意第一行只能是工资标题,且在工资条中有一列显示需要发送邮件的邮件地址。
打开WORD,首先编制如下图样式,此样式为发给员工的工资表格式点击“邮件-开始邮件合并-电子邮件”点击后,再点击“选择收件人-使用现有列表“在选择工资表文档,并选择对应的页签,如下将光标接入编号下,需要插入的具体值,选择手稿合并域-具体域完成后如下图点击“预览结果”可看刚才所设置的结果,点预览结果后的可查看第2条,第3条等信息设置完成后点击“完成并合并-发送电子邮件”在收件人列表中,选择电子邮件所在列,输入主题及邮件格式点击“确定”完成发送,只要网络和OUTLOOK设置正确,即已发送出去了。
检查是否发送邮件,可打开OUTLOOK,在已发邮件中可看到工资条中所要发送的邮件,如果网络较慢,会在发件箱中。
下图是测试后,在本机收到的邮件样式在用word邮件合并功能时使小数点保留两位2010-03-17 10:43:53| 分类:信息技术| 标签:|字号大中小订阅《Word非常接触》对邮件合并保留数据原格式的精彩论述chencha8077兄好!以下是小弟的操作步骤(红色字为每一步操作后的结果),请参考:①在主文档内按Alt+F9快捷键若干次,直到主文档内显示出{ MERGEFIELD "抵押率()"}为止。
②选定{ MERGEFIELD "抵押率()" },按Ctrl+F9快捷键为之加上一个域括号,变成{ { MERGEFIELD "抵押率()" } }。
③在{ { MERGEFIELD "抵押率()" } }中输入一个等号,使之变成{ ={ MERGEFIELD "抵押率()" } },先按一次Alt+F9快捷键,然后再按一次F9键以刷新域,即可看到原来的66.670000000000002已经变成了66.67。
如何利用Outlook进行邮件群发和批量处理Microsoft Outlook是一款功能强大的邮件管理工具,除了普通的邮件收发功能外,它还提供了一系列方便的邮件群发和批量处理功能,让我们能够更加高效地管理和处理大量邮件。
本文将介绍如何利用Outlook进行邮件群发和批量处理,提高工作效率。
一、如何进行邮件群发邮件群发功能可以让我们将同一封邮件发送给多个收件人,省去逐个发送的繁琐操作。
下面是使用Outlook进行邮件群发的步骤:1. 打开Outlook,点击“新建邮件”按钮。
2. 在“收件人”栏中输入群发邮件的收件人地址,可以直接输入多个地址,每个地址之间用分号隔开;也可以点击“收件人”按钮,选择已有的联系人或从地址簿中添加收件人。
3. 编写邮件主题和正文内容。
4. 完成邮件编辑后,点击“发送”按钮,邮件即可群发给所有收件人。
二、如何进行邮件批量处理邮件批量处理功能可以帮助我们快速处理大量邮件,例如将邮件归档、标记为已读、删除等。
下面是使用Outlook进行邮件批量处理的方法:1. 在邮件列表中选择要批量处理的邮件,按住Ctrl键可以选择多封邮件。
2. 点击“操作”菜单,选择需要进行的批量处理操作,例如“移动到文件夹”、“标记为已读”、“删除”等。
3. 根据提示选择目标文件夹、标记方式或确认删除等操作。
4. 点击“确定”按钮,Outlook即会按照你的选择对选中的邮件进行批量处理。
三、如何进行邮件定时发送Outlook提供了邮件定时发送功能,允许我们在未来的特定时间自动发送邮件,这对于安排会议或提醒任务等场景非常有用。
下面是使用Outlook进行邮件定时发送的步骤:1. 编写好要定时发送的邮件,在点击“发送”按钮之前,点击邮件编辑界面的“选项”卡。
2. 在“延迟送出”选项中,点击“延迟发送”复选框,然后选择发送时间。
3. 点击“关闭”按钮,邮件会在设定的发送时间自动发送。
四、如何自动回复邮件Outlook还提供了自动回复邮件功能,可以在我们暂时无法回复邮件的情况下自动向发件人发送回复。
如何用邮件批量发放工资条又快到月底了,制作工资条是件非常麻烦的事,做财务都知道如果一个一个的分别发送邮件工资条到每个人邮箱的话是件很费时费力的事情,如果单单几个人还好,要是有几十号人,几百号人,那工作量是相当的可观。
笔者也有感同深受,那是个非常枯燥又烦锁的工作。
现在向大家推荐款比较实用的批量制作批量分发工资条的软件,那是相当的省时省力。
是什么样的软件让笔者有这样的感慨了,听咱来把制作步骤慢慢道来。
首先,当然你有一份已经制作好的全公司的Excel格式工资总单,如下图:《xx公司员工工资总清单.xls》,如下图,第一行为标题行,用来说明每项数值名称,最重要的一点,每行都有一个与之对应的邮箱地址。
(图1)接下来,咱就来介绍一下,如何让笔者认为省时省力的工具了,首选是一款名叫:GoGoMail 2010工具软件,这个软件你可以在百度搜索GoGoMail 2010就可以得到,该工具软件提供了多种实用助手,用于配合我们去将不同的Excel数据进行拆分,然后生成每个人的工资信息,它提供了2种不同的方式邮件格式,一种是以邮件附件的方式一种是以邮件正文方式该软件的主界面:现在我们先来介绍一下,以邮件附件的方式发送工资。
1.首先,我们点击 GoGoMail主界面的Excel-工资条处理向导,会弹出 Excel工资条处理向导对话框,如图点击一下浏览(B)按钮,出现让你选择要处理的Excel文件,如图选中,要处理的公司员工工资总清单的,出现以下对话框接下来,我们点击一下,将出现以下对话框,我们选择好我们相关条件后,点击完成,软件就开始自动进行分配等提示工资条处理完毕后,即完成了要发送的工资条的自动制作点击确认 ,返回到已处理好的工资条列表中,如图这样就完成了整个工资条的制作,当然,大家收到的邮件附件都是各自工资条,接下来了,我们要对正文写些什么点击编辑邮件,输入邮件的主题及邮件正文后,保存即可现在我们就可以点击,开始发送了,就完成了整个工资条的快速分发。
办公软件技巧分享如何利用邮件合并发送批量邮件节省时间在日常的工作中,我们经常需要发送相同内容的邮件给多个收件人,如邀请函、问候邮件等。
手动一个一个地填写收件人、主题和正文无疑是一项消耗时间和精力的任务。
然而,通过办公软件提供的邮件合并功能,我们可以轻松地实现批量发送邮件,从而节省时间和提高工作效率。
本文将分享如何利用邮件合并功能进行批量发送邮件。
一、准备工作首先,我们需要准备好相关的数据。
通常,我们会将收件人的姓名、邮箱地址等信息储存在Excel表格中。
确保Excel表格中的数据格式正确,每一列应包含对应的字段信息。
二、创建邮件模板在进行邮件合并之前,我们需要创建好邮件的模板。
打开你常用的电子邮件软件,比如Outlook或者Gmail等,点击"写邮件"按钮进入新邮件编辑界面。
在主题和正文的合适位置,我们需要插入合并字段。
合并字段是由Excel表格中的字段信息替代的占位符,如"【姓名】"、"【邮箱】"等。
这样,在进行邮件合并时,软件会自动将合并字段替换为对应的值。
确保模板的格式和正文内容正确,保存好以备使用。
三、进行邮件合并完成了上述准备工作之后,我们可以开始进行邮件合并了。
这里以Outlook为例,演示如何进行邮件合并。
1. 打开Excel表格,选中需要进行合并的数据。
2. 点击"邮件合并"按钮,在弹出的窗口中选择"邮件合并向导"。
3. 在合并向导中,选择"电子邮件"作为输出类型,并点击"下一步"按钮。
4. 在选择收件人列表中,点击"选择的文件",然后在弹出的对话框中选中你的Excel表格。
确认选择后继续点击"下一步"。
5. 在撰写邮件中,点击"从现有的"开始撰写,然后选择你事先保存好的邮件模板。
点击"下一步"。
Outlook、Excel、Word一键发送工资条邮件一、Outlook启用第一步打开outlook(以microsoft outlook 2010为例),点击文件→信息→添加账户二、QQ邮箱设置第二步设置电子邮件账户,使用qq邮箱时,要先给qq邮箱设置独立密码,打开QQ邮箱→设置→账户→账户安全→独立密码(按要求设置即可),设置完独立密码后,需开启(POP3/SMTP服务)开启POP3/SMTP服务是需要验证密保,用手机号发送短信内容“配置邮件客户端”至1069070069,验证完成后即可收到如图四所示的16位授权码(牢记!牢记!牢记!),此刻POP3/SMTP服务功能便开启了。
三、添加电子邮箱账户第三步填写电子邮件账户信息(接第一步),选择“手动配置服务器设置或其他服务器类型”→选择“Internet电子邮件(I)”→填写姓名和电子邮件地址,其中服务器信息按照下图内容完整填写,登录信息中,用户名为你的QQ号,特别注意,此处的密码为第二步中(图四)的16位授权码,并非你的邮箱密码!!!第四步点击其他设置→发送服务器→登录使用,用户名为QQ号,密码为第二步中(图四)的16位授权码,并非你的邮箱密码!!!→点击高级,接收服务器为995,发送服务器为465,加密链接类型为SSL→确定第五步点下一步进行联机搜索服务器设置。
这一步需要耐心等候3-5分钟,建立网络连接后点下一步即可完成配置。
第六步查看添加账户。
点击文件→账户设置进行查看。
Outlook账户添加邮箱完成,接下来就是见证奇迹的时刻了。
四、建立Excel工资明细表及word工资条模板第七步建立excel工资明细表,该表除了有工资信息外,必须包含员工的e-mail地址。
第八步建立word文件,文件内容就是将要发送的工资条的内容(注意:Word 中的所有字段Excel工资表中必须包括)。
五、邮件合并第九步创建邮件,保持excel\word都处于打开状态,在word文档中编辑。
写这段代码的起因是因为公司要下发一个销售日报表,但是由于不同部门的销售区域老总看到的只能是自己区域的数据,每个工作簿有10多个工作表,如果靠手工来做工作量极大,因此,有迫切的需求要对报表做一些自动化操作,并能自动发送邮件。
在做到以上的基础上,还要顾及美观。
表格的截图如下:可以看到这个表格处理的几个关键点:1、有组合,要取消组合,目前python还没法实现(我没找到办法),所以必须要调用VBA2、有隐藏的sheet,其实是3级组合,要展示出来3、要根据2级组合里的区域,分别发给对应的区域4、要保留原格式import xlwings as xwimport win32com.client as win32程序运行的时候不显示在前端,也不新建Excel窗口app = xw.App(visible=Falseadd_book=False)ywb = ["浙江部""河南部""KA部""黑龙江部""广西部""江西部""海南部""广东部"]for i in range(0len(ywb)): # 这是循环的开始,读取业务部的数量,每个业务部作为一个最大的循环# print(i)iw = app.books.open(r'E:\Documnet\工作\07_数据分析\临时文件\副本.xlsm')sheet_count = iw.sheets.count # 读取整个工作簿的sheet数量# 由于源文件里还有很多隐藏的工作表不可以下发给各区域,而所有文件格式都#是一样,因此这里定义了一个函数sheet_names(),用来读取第一个“全品项销额”在工作表中的位置,并以此作为下发给区域的第一个表格def first_sheet():for ii in range(0 sheet_count):if iw.sheets[ii].name == "全品项销额":return ii# break # 写代码的时候测试用,阶段性中断程序# range左闭右开,所以需要需要页面总数+1,与python计数序列从0开始的习惯不同,xlwings的行列计数都是从1开始,下面会用到for sht in range(first_sheet()sheet_count+1): # 开始对每个页面做循环oldsht = iw.sheets(sht)# print()rownumber = oldsht.range('A10000').end('up').row# 另一个写法是rownumber = ed_st_cell.row# print(rownumber)# 由于暂无法实现先复制再粘贴,所以我用的是直接在源文件里改动,然后另存为的办法# 以下这个循环是先从最后一行往上找,直到找到对应的单元格rownumber和1表示范围, -1表示每次循环的stepfor r1 in range(rownumber1-1):# print(oldsht.cells(r2).value)# print(oldsht.cells(r2).value)# print(ywb[i])if oldsht.cells(r12).value == ywb[i]:# 可以用range直接表示行或者列,但是无论是行还是列都应以文本形式出现,字母指代列,数字指代行oldsht.range(str(r1+1) + ':' + str(500)).delete()break# 由于目标业务部的上方还有可能有其他的业务部,因此,还需要从上往下再删一次print('阶段一完成')while i != 0:for r2 in range(5rownumber):if oldsht.cells(r22).value == ywb[i-1]:oldsht.range('5'+':'+str(r2)).delete()breakbreakprint('阶段二完成')#----以上就是把不需要的行都删除了#-----以下是调用宏,把原有的组合取消,并取消隐藏的行,宏代码如下:'''Sub ungroup()Rows("3:150").ClearOutlineRows("3:150").EntireRow.Hidden = FalseRange("B5").SelectEnd Sub'''oldsht.activate()ungroup = iw.macro('ungroup')ungroup()#-----然后下面的循环是把多余的sheet删除,一共有多少个sheet,就删多少次for iii in range(0first_sheet()):iw.sheets[0].delete()# -----多余sheet删除完毕# 最后让第一个sheet成为active sheetiw.sheets[0].activate()# 由于试了很多办法,都没有简便的办法先将sheet带格式复制出来再粘贴,只好反其道而行之,直接在源文件# 中做改变,然后将改变后的源文件另存为并关闭iw.save(r'E:\Documnet\工作\07_数据分析\临时文件\test' + '\\' + ywb[i] + '.xlsm')iw.close()# 到这里改造基本完成,但问题是由于源工作簿中有宏,所以必须另存为xlsm格式,xlwings暂时没找到直接另存为xlsx的办法# 因此只能用win32com模块调用excel本身的saveas接口进行另存为操作,正好发邮件也得用到win32com# --------------以下是另存为xlsxxlApp = win32.DispatchEx("Excel.Application")xlApp.Visible = TruexlApp.DisplayAlerts = 0xlBook = xlApp.Workbooks.Open(r'E:\Documnet\工作\07_数据分析\临时文件\test' + '\\' + ywb[i] + '.xlsm' False)xlBook.SaveAs(r'E:\Documnet\工作\07_数据分析\临时文件\test' + '\\' + ywb[i] + '.xlsx' FileFormat=51)#上面的FileFormat是调用了Excel本身的SaveAs接口,51就是xlsx的代码xlBook.Close(False)xlApp.Quit()# -------------另存为结束#---------以上是获取工作簿并进行操作,以下是进行邮件操作,用到的模块为win32----------#outlook = win32.Dispatch('Outlook.Application')Mail_Item = outlook.CreateItem(0)Mail_Item.Recipients.Add('zhuce@')# 应先在邮箱通讯录中建立邮件组,直接输入邮件组名字可以发送Mail_Item.Subject = 'zhuce@'Mail_Item.BodyFormat = 2Mail_Item.HtmlBody = '''Hello Guys<br/> This a Mail send by Jerry'''Mail_Item.Attachments.Add(r'E:\Documnet\工作\07_数据分析\临时文件\test' + '\\' + ywb[i] + '.xlsx')Mail_Item.Save()#------------邮件发送完成----------------------------------------------------------#print(ywb[i]+'完成')app.quit()————————————————版权声明:本文为CSDN博主「twoguest」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
工资条制作及自动发送邮件的有效方法一、准备文件及软件:1、 安装word2010或20072、 安装microsoft outlook 并在其选项中勾选为默认邮件程序3、 完整安装adobe pdf 专业版,在office 中生成加载项如下图4、 新建WORD 表格;2、工资数据excel ;3、工资条模板。
5、 准备excel 工资数据表(要有邮件地址的列)二、制作方法:序号姓名部门岗位基本工资岗位津贴福利津贴餐费津贴高温津贴奖励奖金备注«序号»2012年11月工资明细过节费其他补贴或补发项加班费全勤天数获薪天数餐补天数缺勤扣减税前减项应发工资公积金个人部分公积金单位部分社保单位缴交的部分社保个人缴交的部分应税额税额税后减项实发工资用工情况2、 点击“邮件”选项卡,单击“开始邮件合并”,并单击“目录”如图:3、单击“选择收件人”并单击“使用现有列表”,出现“选择数据源”对话框,操作如图:4、把光标移到如图那里5、单击“插入合并域”,并单击“序号”,这样就把excel的“序号”这列数据插进去了,其他项依次类推,如图:生成以下目录序号姓名部门岗位基本工资岗位津贴福利津贴餐费津贴高温津贴奖励奖金备注«序号»«姓名»«部门»«岗位»«基本工资»«岗位津贴»«福利津贴»«餐费津贴»«高温津贴»«奖励奖金»«备注»2012年11月工资明细过节费其他补贴或补发项加班费全勤天数获薪天数餐补天数缺勤扣减税前减项应发工资«过节费»«其他补贴或补发项»«加班费»«全勤天数»«获薪天数»«餐补天数»«缺勤扣减»«税前减项»«应发工资»公积金个人部分公积金单位部分社保单位缴交的部分社保个人缴交的部分应税额税额税后减项实发工资用工情况«公积金个人部分»«公积金单位部分»«社保单位缴交的部分»«社保个人缴交的部分»«应税额»«税额»«税后减项»«实发工资»«用工情况»6、生成打印工资条的方法(如需直接发送邮件到邮箱请跳过此条直接操作下面第9条)点击“完成并合并”,并单击“编辑单个文档”,出现“合并到新文档”对话框,如图:7、点击确定后就生成了“工资条”,并保存。
如何使用Outlook进行群发邮件第一章:Outlook简介及其优势Outlook是一款流行的邮件客户端软件,广泛应用于各类机构和个人的日常邮件通讯中。
它有一系列强大的功能,群发邮件也是其中之一。
通过Outlook的群发邮件功能,可以方便地向多个收件人发送邮件,提高工作效率和便利性。
第二章:准备工作在使用Outlook进行群发邮件之前,首先需要做一些准备工作。
首先,确保你已经安装并成功登录了Outlook客户端。
其次,准备好邮件主题、邮件正文和附件(如果需要)。
另外,还可以创建一个收件人列表,方便后续的群发邮件操作。
第三章:创建收件人列表Outlook提供了创建和管理收件人列表的功能。
首先,在Outlook的“联系人”栏目下,可以点击“新建联系人”来逐个添加联系人,包括姓名、邮箱等信息。
也可以选择导入其他文件格式的联系人信息,如CVS、Excel等。
然后,可以将这些联系人组合成一个收件人列表,方便日后的群发操作。
第四章:使用邮件模板为了提高工作效率,Outlook支持使用邮件模板来快速发送邮件。
用户可以创建和保存不同的邮件模板,包括邮件主题、正文和附件等。
当需要发送相同内容的邮件时,只需选择相应的邮件模板,填入收件人列表,然后点击发送即可。
这样,可以节省大量的时间和精力。
第五章:使用邮件合并功能Outlook的邮件合并功能可以根据收件人列表中的每个收件人个性化地发送邮件。
首先,在Outlook的“邮件合并”功能中选择“使用当前文档”来指定邮件的主题和内容。
然后,点击“收件人列表”来导入之前创建的收件人列表。
接着,在邮件的正文中可以使用邮件合并字段,如“尊敬的<姓名>”。
最后,点击“发送邮件合并”,Outlook会根据列表中的每个收件人信息,自动发送相应个性化的邮件。
第六章:设置延迟发送在某些情况下,为了避免邮件发送的不当和错误,可以使用Outlook的延迟发送功能。
通过设置延迟发送时间,可以在点击发送后的一段时间内撤回邮件,进行修正或删除。
【ExcelVBA】-VBA结合Outlook批量发送邮件(⼀)⼀提到批量发送邮件,可能很多⼩伙伴就想到Word⾥⾯的邮件合并功能,可以批量发送邮件和⼯资条等。
还没学习过的⼩伙伴请移步:【Word技巧】- 教会你99%的⼈都不会的“邮件合并”功能。
从今天图⽂的标题就可以看出,是使⽤VBA结合Outlook进⾏批量邮件发送,所以在发送之前就需要先配置Outlook,配置⼀个可以⽤来发送邮件的邮箱,具体配置如下:1 点击【⽂件】菜单,选择【信息】,点击【添加帐户】,进⼊新帐户添加向导。
2 在弹出的对话框中选择【⼿动设置或其他服务器类型】,点击【下⼀步】。
3 选择【POP或IMAP】,点击【下⼀步】。
4 按下图所⽰填⼊信息,然后点击【其他设置】。
5 在【其他设置】⾥找到【发送服务器】,选中【我的发送服务器(SMTP)要求验证】,具体如下图所⽰:6 在【其他设置】⾥找到【⾼级】,具体设置如下图所⽰:7 点击【确定】,回到第4步,点击【下⼀步】进⾏⾃动测试账户,测试成功后如下图所⽰:8 此时邮箱就会收到Outlook发送的测试消息,测试邮件截图如下:Outlook邮箱配置好了后,就可以使⽤如下的代码进⾏批量发送邮件了。
使⽤Excel VBA批量发送的核⼼代码如下:'*******************************************************************''经测试在OUTLOOK 2000中不会显⽰警告窗⼝.'引⽤:Microseft Outlook *.0 Object Library'需要注意⼀点 , 邮件的标题, 否则不能⾃动放送!'**********************************************************************Public Function SendMail(strTo As String, strSubject As String, strBody As String,Optional strAttachment As String = '', Optional strCC As String = '', Optional strBCCAs String = '') As IntegerOn Error GoTo errHandler'定义outlook的对象变量Dim objOutlook As New Outlook.Application'定义outlook邮件的对象变量Dim objMail As Mailitem'创建objOutlook为Outlook应⽤程序对象Set objOutlook = New Outlook.Application'创建objMail为⼀个邮件对象Set objMail = objOutlook.CreateItem(olMailitem)'循环添加附件Dim strArraystrArray = Split(strAttachment, '|')For i = 0 To UBound(strArray)objMail.Attachments.Add ThisWorkbook.Path & '\' & strArray(i) '如果有多个附件,分别添加NextobjMail.To = strTo '设置收信⼈的邮箱If ChkEmail(strCC) = 0 Then = strCC '设置抄送的邮箱End IfIf ChkEmail(strBCC) = 0 ThenobjMail.BCC = strBCC '设置密送的邮箱End If'设置邮件的主题If strSubject <> '' ThenobjMail.Subject = strSubjectElseobjMail.Subject = '主题'End If'设置邮件正⽂objMail.Body = strBodyWith objMail'新建邮件窗⼝显⽰,如果不熟练可以取消注释'.Display'邮件发送.SendEnd With'销毁objMail对象Set objMail = Nothing'销毁objOutlook对象Set objOutlook = NothingSendMail = 0Exit FunctionerrHandler:SendMail = 1End Function如上所⽰,该代码为⼀个函数,创建了Outlook和邮件对象,然后进⾏设置收件⼈、主题、正⽂、附件等信息。
如何使用word+excel+outlook 给候选人群发邮件
我用的是07版的。
需要:
1.一个word文档,内容是发给候选人的文字。
2.一个excel表格,里面是你需要发送的候选人名单,名字和邮箱地址是必填项。
3.outlook邮箱。
步骤:
1.word文档,可以在邮箱编辑好所有的内容包括签名等,然后一起复制到word文档中,调整好所有格式,因为最终发送的就是这里的内容。
2.excel表,名字和邮箱地址是必填项。
3.选择“邮件—开始邮件合并—邮件合并分步向导”。
4.在右边会出现这样一栏,选择“电子邮件”,再选择“下一步:正在启动文档”。
5.选择“使用当前文档”,选择“下一步:选取收件人”。
6.选择“浏览”,选取之前整理好的候选人名单excel表格。
7.打开的效果如图,选择“确定”。
8.选择“确定”。
9.保持选择“使用现有列表”,选择“下一步:撰写电子邮件”。
10.选择“下一步:预览电子邮件”。
11.选择“下一步:完成合并”。
12.将鼠标放在你要插入候选人名字的地方,选择“插入合并域”,选择要插入的内容,如名字。
13.插入称呼后的效果。
14.选择“电子邮件”
15.选择“收件人”,选择“邮箱”。
16. 主题行写上你的邮件主题,邮件格式保持html。
保证邮件没有问题,然后选择“确定”,邮件就会发出去了,候选人收到的邮件都是单独的,可以先用同事的邮箱演习一下。
PS:点击确定之前一定要确定邮件内容没有错误!
完成之后,建议word文档不保存。
Excel 和outlook 结合自己制作出可以群发工资的程序,然后通过HTML语言实现排版的表格化。
首先是实现EXCLE 中VB 自动调用OUTLOOK 的语句,举一反三。
1 .准备通过以下是通过HTML 做的一个表格的部分,具体的数据项则通过VB 来索引实现。
效果如下你好[==1==],下面是你2月份的<font color="red"><b>工资</b></font>,,明细如下:<table align="center" width="500" height="25" border=1bordercolor="#000000"><tbody><tr><td colspan="4" align="center"> 工资表</td></tr><tr><td width="25%" height="25">薪酬等级</td><td width="25%" height="25">[==2==]</td><td width="25%" height="25">稿费、其它</td><td width="25%" height="25">[==3==]</td></tr><tr><td width="25%" height="25">薪档</td><td width="25%" height="25">[==4==] </td><td width="25%" height="25">岗位津贴</td><td width="25%" height="25">[==6==] </td></tr><tr><td width="25%" height="25">基本工资</td><td width="25%" height="25">[==4==] </td><td width="25%" height="25">应发合计</td><td width="25%" height="25">[==6==] </td></tr><tr><td width="25%" height="25">岗位工资</td><td width="25%" height="25">[==4==] </td><td width="25%" height="25">扣公积金</td><td width="25%" height="25">[==6==] </td></tr><tr><td width="25%" height="25">补贴</td><td width="25%" height="25">[==4==] </td><td width="25%" height="25">扣统筹保险</td><td width="25%" height="25">[==6==] </td></tr><tr><td width="25%" height="25">工龄工资</td><td width="25%" height="25">[==4==] </td><td width="25%" height="25">扣医疗保险</td><td width="25%" height="25">[==6==]</td></tr><tr><td width="25%" height="25">特补、独子</td><td width="25%" height="25">[==4==]</td><td width="25%" height="25">扣失业保险</td><td width="25%" height="25">[==6==]</td></tr><tr><td width="25%" height="25">加班费</td><td width="25%" height="25">[==4==]</td><td width="25%" height="25">计税工资</td><td width="25%" height="25">[==6==]</td></tr><tr><td width="25%" height="25">事假等扣款</td><td width="25%" height="25">[==4==]</td><td width="25%" height="25">扣税金</td><td width="25%" height="25">[==6==]</td></tr><tr><td colspan="2" align="center" width="50%" height="25">实发合计</td><td colspan="2" align="center" width="50%" height="25">[==4==] </td></tr></tbody></table>,感谢你的辛勤工作。
准备待发送的数据:a.) 打开Excel,新建Book1.xlsxb.) 填入下面的内容,第一列:接收人,第二列:邮件标题,第三列:正文,第四列:附件路径注意:附件路径中可以有中文,但是不能有空格这里你可以写更多内容,每一行作为一封邮件发出。
注意:邮件正文是黑白文本内容,不支持加粗、字体颜色等。
(如果你需要支持彩色的邮件,后面将会给出解决办法)2. 编写宏发送邮件a.) Alt + F11 打开宏编辑器,菜单中选:插入->模块b.) 将下面的代码粘贴到模块代码编辑器中:‘代码list-1[vb]view plaincopyprint?1.Public Declare Function SetTimer Lib "user32" _2.(ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVallpTimerfunc As Long) As Long3.Public Declare Function KillTimer Lib "user32" _4.(ByVal hwnd As Long, ByVal nIDEvent As Long) As Long5.Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)6.7.8.9.Function WinProcA(ByVal hwnd As Long, ByVal uMsg As Long, ByVal idEvent AsLong, ByVal SysTime As Long) As Long10.KillTimer 0, idEvent11.DoEvents12.Sleep 10013.'使用Alt+S发送邮件,这是本文的关键之处,免安全提示自动发送邮件全靠它了14.Application.SendKeys "%s"15.End Function16.17.18.' 发送单个邮件的子程序19.Sub SendMail(ByVal to_who As String, ByVal subject As String, ByVal body AsString, ByVal attachement As String)20.Dim objOL As Object21.Dim itmNewMail As Object22.'引用Microsoft Outlook 对象23.Set objOL = CreateObject("Outlook.Application")24.Set itmNewMail = objOL.CreateItem(olMailItem)25.With itmNewMail26..subject = subject '主旨27..body = body '正文本文28..To = to_who '收件者29..Attachments.Add attachement '附件,如果你不需要发送附件,可以把这一句删掉即可,Excel中的第四列留空,不能删哦30..Display '启动Outlook发送窗口31.SetTimer 0, 0, 0, AddressOf WinProcA32.End With33.Set objOL = Nothing34.Set itmNewMail = Nothing35.End Sub36.37.38.39.40.'批量发送邮件41.Sub BatchSendMail()42.Dim rowCount, endRowNo43.endRowNo = Cells(1, 1).CurrentRegion.Rows.Count44.'逐行发送邮件45.For rowCount = 1 To endRowNo46.SendMail Cells(rowCount, 1), Cells(rowCount, 2), Cells(rowCount, 3),Cells(rowCount, 4)47.Next48.End Sub最终代码编辑器中的效果如下图:i为了正确执行代码,你还需要在菜单中选择:工具->引用中的Microseft Outlook X.0 Object Library 勾选上(X.0是版本号,不同机器可能不一样)c.) 粘贴好代码、勾选上上面的东东后可以发送邮件了,点击上图A红圈所示的绿色三角按钮,会弹出下图所示的对话框,点运行,就开始批量发送邮件了。