excel群發(fā)郵件宏

  

excel群發(fā)郵件主要步驟有以下幾點(diǎn):


excel群發(fā)郵件宏


第一步:在excel表中鍵入以下表格格式,填寫(xiě)好對(duì)應(yīng)的內(nèi)容,郵件附件內(nèi)容填的是需要發(fā)送的附件地址。


第二步:插入命令按鈕控件,進(jìn)入設(shè)計(jì)模式,鍵入以上所有代碼,保存。


第三步:配置outlook郵件發(fā)送環(huán)境,工具——引用——勾選outlook 15.0——確定。


第四步:點(diǎn)擊命令按鈕無(wú)反應(yīng),則回到VB編輯界面,點(diǎn)擊圖中三角形按鈕,后顯示郵件發(fā)送成功,完成。


使用EXCEL VBA代碼自動(dòng)群發(fā)帶附件的郵件同時(shí)抄送給不同的人

excel群發(fā)郵件宏自動(dòng)群發(fā)帶附件的郵件同時(shí)抄送給不同的人代碼具體如下:

Private Sub CommandButton1_Click()

'要能正確發(fā)送并需要對(duì)Microseft Outlook進(jìn)行有效配置

On Error Resume Next

Dim rowCount, endRowNo

Dim objOutlook As New Outlook.Application

Dim objMail As MailItem

Dim SigString As String

Dim Signature As String

'取得當(dāng)前工作表與Cells(1,1)相連的數(shù)據(jù)區(qū)行數(shù)

endRowNo = Application.WorksheetFunction.CountIfs(Range(“A:A”), “<>”)

'創(chuàng)建objOutlook為Outlook應(yīng)用程序?qū)ο?

Set objOutlook = New Outlook.Application

'開(kāi)始循環(huán)發(fā)送電子郵件,比如從第二行開(kāi)始,第一行是標(biāo)題

For rowCount = 2 To endRowNo

Set objMail = objOutlook.CreateItem(olMailItem) '創(chuàng)建objMail為一個(gè)郵件對(duì)象

'提取郵件簽名

SigString = Worksheets(“Sheet1”).Cells(2, 5)

If Dir(SigString) <> “” Then

Signature = GetBoiler(SigString)

Else

Signature = “”

End If

With objMail

.To = Cells(rowCount, 1).Value '設(shè)置收件人地址(從Excel表的第一列"郵件地址"字段中獲得)

.CC = Cells(rowCount, 2).Value '設(shè)置抄送人地址(從Excel表的第二列"郵件地址"字段中獲得)

.Subject = Cells(rowCount, 3).Value '設(shè)置郵件主題(從Excel表的第三列"郵件主題"字段中獲得)

.HTMLBody = Cells(rowCount, 4).Value '設(shè)置郵件內(nèi)容(從Excel表的第四列"郵件內(nèi)容"字段中獲得)

.Attachments.Add Cells(rowCount, 5).Value '設(shè)置附件(從Excel表的第五列"附件"字段中獲得)

.Send

End With

Set objMail = Nothing '銷毀objMail對(duì)象

Next

MsgBox (“郵件全部發(fā)送完成!”)

Set objOutlook = Nothing '銷毀objOutlook對(duì)象

End Sub

'提取郵件簽名子函數(shù)

Function GetBoiler(ByVal sFile As String) As String

Dim fso As Object

Dim ts As Object

Set fso = CreateObject(“Scripting.FileSystemObject”)

Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)

GetBoiler = ts.readall

ts.Close

End Function

相關(guān)資訊

推薦軟件