VBA / 使用Excel VBA批次寄信

每個電子信箱當然都可以寄出大量信件

但是很容易會被當成寄出廣告信件

解決的辦法之一就是要有寄件間隔時間

只是要控制寄件間隔就要額外想辦法

在網路上找到一個很厲害的老師-彰化一整天所寫的excel VBA程式

補充:原作者說明-https://www.youtube.com/watch?v=mmYejL3ABcc 原始程式

可以實現批次寄信,並且設定每封信的寄出間隔時間

相關資訊可以直接用關鍵字拜谷狗大神

嘗試將固定間隔時間改為亂數5~10秒

實際使用之後,是可以正常運作

主要調整的內容如下

' 每封間格時間(單位:秒) 5<= delaysec <= 10
'          Int( (上限-下現+1) * Rnd() + 下限 )
delaysec = Int((10 - 5 + 1) * Rnd() + 5)
' MsgBox (delaysec)
Application.Wait (Now + TimeValue("0:00:" & delaysec))

說明:

delaysec是間隔時間的變數,並且將變數移到寄出信件的While迴圈之內

這樣就能夠每跑一次迴圈,重新取得一個5~10之內的亂數值

而程式便是透過暫停時間來達成每封信寄出的間隔時間

取得一個範圍亂數值的方式是參考 Excel VBA 產生隨機亂數教學與範例

參考資料

Application.Wait

TimeValue()

TimeSerial()

Excel VBA 產生隨機亂數教學與範例