excel怎么批量發(fā)送郵件批量發(fā)送工資條?
每個月工資條如何發(fā)放給大家是一個頭疼的事情,因為工資涉及到保密問題,用郵件吧,每個人的郵件內(nèi)容都有些不一樣的地方,人一多就特別容易出錯;光這個發(fā)工資條就夠讓人忙活好長時間的了;那么怎么能快速的發(fā)放給大家呢?下面小編就為大家介紹excel怎么批量發(fā)送郵件批量發(fā)送工資條方法,來看看吧!
方法/步驟
按照下圖整理工資明細表
1,列數(shù)可自行新增刪除;
2,如果整理的數(shù)據(jù)列,無法發(fā)送郵件的請把表頭內(nèi)添加大寫字母“X”;
3,工作表名稱用作了郵件主題,發(fā)送前請修改工作表名稱;

啟用開發(fā)工具選項卡;插入命令控件;修改控件名稱及顯示名;



進入VBA編程界面;復(fù)制以下代碼到編輯窗口。
Private Sub 全自動發(fā)送郵件_Click()
'要能正確發(fā)送并需要對Microseft Outlook進行有效配置
On Error Resume Next
Dim rowCount, endRowNo, endColumnNo, sFile$, sFile1$, A&, B&
Dim objOutlook As Object
Dim objMail As MailItem
'取得當前工作表數(shù)據(jù)區(qū)行數(shù)列數(shù)
endRowNo = ActiveSheet.UsedRange.Rows.Count
endColumnNo = ActiveSheet.UsedRange.Columns.Count
'取得當前工作表的名稱,用來作為郵件主題進行發(fā)送
sFile1 = ActiveSheet.Name
'創(chuàng)建objOutlook為Outlook應(yīng)用程序?qū)ο?/p>
Set objOutlook = CreateObject("Outlook.Application")
'開始循環(huán)發(fā)送電子郵件
For rowCount = 2 To endRowNo
'創(chuàng)建objMail為一個郵件對象
Set objMail = objOutlook.CreateItem(olMailItem)
With objMail
'設(shè)置收件人地址,數(shù)據(jù)源所在列數(shù)
.To = Cells(rowCount, 5)
'設(shè)置抄送人地址(從通訊錄表的'E-mail地址'字段中獲得)
'.CC = Cells(rowCount, 0)
'設(shè)置郵件主題,取值工作表名,
.Subject = sFile1
'設(shè)置郵件內(nèi)容(從通訊錄表的“內(nèi)容”字段中獲得)
'align 單元格文本顯示方式 left(向左)、center(居中)、right(向右),默認是center, width-寬 height-高 border 單元格線粗細,bordercolor返回或設(shè)置對象的邊框顏色
'colSpan是一種編程語言,其屬性可設(shè)置或返回表元橫跨的列數(shù)
sFile = "<tr>您好!<br> 以下是您" + sFile1 + ",請查收!</tr>"
sFile = sFile + "<table align='left' width='500' height='25' border= 1 bordercolor='#000000'> <tbody> "
sFile = sFile + "<tr> <td colspan ='4' align='center'> 工資表</td> </tr> "
B = 1
For A = 1 To endColumnNo
'數(shù)據(jù)表頭中添加“X”后將不發(fā)送此字段
If Application.WorksheetFunction.CountIf(Cells(1, A), "*X*") = 0 Then
If B = 1 Then
sFile = sFile + "<tr> <td width='20%' height='25'> " + Cells(1, A).Text + " </td> <td width='30%' height='25'> " + Cells(rowCount, A).Text + "</td>"
B = 0
Else
sFile = sFile + "<td width='20%' height='25'> " + Cells(1, A).Text + " </td> <td width='30%' height='25'> " + Cells(rowCount, A).Text + "</td> </tr>"
B = 1
End If
End If
Next
.HTMLBody = sFile
'設(shè)置附件(從通訊錄表的“附件”字段中獲得)
.Attachments.Add Cells(rowCount, 24).Value
'自動發(fā)送郵件
.Send
End With
'銷毀objMail對象
Set objMail = Nothing
Next
'銷毀objOutlook對象
Set objOutlook = Nothing
'所有電子郵件發(fā)送完成時提示
MsgBox rowCount - 2 & "個員工的工資單發(fā)送成功!"
End Sub

大功告成,測試圖如下

提示:用戶定義類型未定義異常處理辦法
處理辦法:點擊工具-引用-勾選<microsoft outlook 14.0 object library>


提示:點擊發(fā)送OUTLOOK安全提示
處理辦法:點擊文件-選項-信任中心-信任中心設(shè)置-編程訪問-勾選從不向我發(fā)出可以活動警告


提示:編程訪問無法勾選顯示灰色時
處理辦法:控制面板-用戶帳號-點擊用戶帳號-更改用戶賬戶控制設(shè)置-調(diào)到從不通知,重啟電腦,調(diào)整完畢OUTLOOK設(shè)置可以再調(diào)整回來。



注意事項
提示:發(fā)送全可以先斷網(wǎng)啊,點擊后再去郵箱內(nèi)的發(fā)件箱看效果怎么樣,不行可以刪除重來的。
實例文檔下載地址:http://pan.baidu.com/s/1hrzNA9A
以上就是excel怎么批量發(fā)送郵件批量發(fā)送工資條方法,操作不是很難,不會的朋友可以參考本文,希望能對大家有所幫助!
推薦閱讀:在excel中如何制作漂亮的工資條?
相關(guān)文章

excel中使用VBA提取指定文件夾中指定擴展名的所有文件名的技巧
項目結(jié)束后,要把相關(guān)文件的存放位置整理成清單交給同事或領(lǐng)導(dǎo),提取文件夾名稱和路徑后,能讓接收方精準找到對應(yīng)文件,減少溝通成本,確保工作銜接順暢,下面我們就來看看2026-02-26
不使用VBA! excel表格提取指定文件夾的所有文件名的技巧
Excel提供了一個名為FILES的宏表函數(shù),可以直接在Excel中批量提取指定文件夾下的文件名,這種方法適合有一定Excel基礎(chǔ)的用戶,操作相對簡單2026-02-26
excel表格中數(shù)據(jù)很多,也存在很多空白單元格,想要統(tǒng)計空白單元格,該怎么操作呢?下面我們就通過公式快速實現(xiàn)2026-02-26
你還在逐個隱藏和取消隱藏工作表嗎? Excel快速批量取消隱藏工作表技巧
在制作Microsoft Excel工作簿時,一般情況下很少會刪除源數(shù)據(jù)所在的Excel工作表,通常的操作辦法就是將暫時不用的Excel工作表隱藏起來,下面我們就來看看 Excel批量隱藏和2026-02-09
excel表格中銷售數(shù)據(jù)擰麻花怎么辦? 教你一招輕松搞定按顏色求和計數(shù)的
職場工作中經(jīng)常會遇到帶有設(shè)置單元格顏色的表格數(shù)據(jù)需要求和,或者按字體顏色和表格顏色求和,那么如何來進行計算呢,詳細請看下文介紹2026-02-09
另類圖例玫瑰圖! excel創(chuàng)意玫瑰圖的制作方法
excel表格中的數(shù)據(jù)想要制作成創(chuàng)意圖表,該怎么制作玫瑰圖呢?下面我們就來看看excel玫瑰圖的制作方法2026-02-09
單元格還可以按需自定義設(shè)置! Excel單元格格式自定義技巧
excel表格中可以按需自定義設(shè)置,該怎么設(shè)置呢?下面我們就來根據(jù)實際的例子來看看詳細設(shè)置方法2026-01-19
Excel規(guī)劃求解根據(jù)多個變量尋求最佳方案
規(guī)劃求解是一個相對較復(fù)雜的分析工具,但是在對數(shù)據(jù)的預(yù)測分析上,可謂功能強大,下面我們就來舉例看看2026-01-15
“規(guī)劃求解”是一組命令的組成部分,借助“規(guī)劃求解”,可求得工作表上某個單元格中公式的最優(yōu)(最大或最?。┲?,并受工作表上其他公式單元格的值的約束或限制,詳細請看下2026-01-15
輕松掌握基礎(chǔ)功能! 給excel初學者的16個VBA基本代碼
歡迎來到VBA的世界!這里有一些簡單的代碼示例,幫助你快速理解VBA的基礎(chǔ)概念,通過這些代碼,你可以逐步掌握VBA的精髓,為更復(fù)雜的任務(wù)打下基礎(chǔ)2026-01-13


