Rica ederim.send yazan yerdeki baştaki tırnağı kaldırın abey.
(10/04/2021, 01:48)Oğuz Türkyılmaz yazdı: [ -> ]For i = basla To bitis
Ayrıca val(basla) ve val(bitis) gibi yapmayı unutmayın inputboxtan alındığı için string olarak algılıyor galiba.
Merhaba,
Akşam teknik olanaksızlıktan cevap veremedim, @
feraz hocam sağolsun yetişmiş gene hızır gibi..
Birinci olarak basla to bitis kısmı haric kalanı bende sorunsuz çalışıyordu. excel,word, pdf, exe ne seçersen ekliyordu.
İkinci olarak aynı anda çok sayıda mail gönderirseniz mail adresiniz spam olarak algılanacak ve mail adresiniz bloklanacak. Tecrübe ile sabit.
5-10 saniye aralıklarla manuel göndermenizde fayda var.
Sağlıklı günler dilerim.
Sn.Kanakan
Outlook da bir defada en fazla 100 adrese mail gönderimine izin verdiği microsoft destek hattında yazıyor bende buna güvenerek bir defada 100 olmasa da garanti olsun diye 50 50 göndermeyi düşünüyordum toplam 3000 küsur adrese yılda 1 defa gönderilecek bir pdf katalog var belki her ay bir kerede o ay ile ilgili kampanya maili atılabilir. Velhasıl kelam 5-10 saniyede bir mail atmam demek 3000 mail için yaklaşık 10 saat uğraşmak demek. 5 er 5 er göndersem 2 saat de biter ama bu en iyi senaryo. Hay allah tek tek uğraşmak ölüm.
(10/04/2021, 09:45)Oğuz Türkyılmaz yazdı: [ -> ]Sn.Kanakan
Outlook da bir defada en fazla 100 adrese mail gönderimine izin verdiği microsoft destek hattında yazıyor bende buna güvenerek bir defada 100 olmasa da garanti olsun diye 50 50 göndermeyi düşünüyordum toplam 3000 küsur adrese yılda 1 defa gönderilecek bir pdf katalog var belki her ay bir kerede o ay ile ilgili kampanya maili atılabilir. Velhasıl kelam 5-10 saniyede bir mail atmam demek 3000 mail için yaklaşık 10 saat uğraşmak demek. 5 er 5 er göndersem 2 saat de biter ama bu en iyi senaryo. Hay allah tek tek uğraşmak ölüm.
Üstad bunla iligi net bir kriter yok, Aşağıdaki makaleyi okumanızı öneririm.
https://www.mailgraf.com/spama-dusmeden-...erilir-mi/
ilginiz ve yönlendirmeniz için çok teşekkür ederim
Kodu alttaki gibi deneyin.50 olarak ayarladım ve gşnderdikten sonra 20 saniye beklemesi gerek.
Mod kımını heralde tam ayarlayamadım.Dir (ThisWorkbook.Path) koduda ekledim dosya nerdeyse orda aransın eklenti diye yolunu değiştirebilirsiniz masaüstü gibi.
Private Sub CommandButton2_Click()
Dim objOutlook As Object
Dim objMail As Object
Dim maill As String
Dim i As Long, ek
Dim syfAna As Worksheet
Dim basla, bitis
Set syfAna = ThisWorkbook.Sheets("Ana_Sayfa")
Dir (ThisWorkbook.Path)
ek = Application.GetOpenFilename("Files (*.**)," & "*.**", 1, "Select File", "Open", False)
If ek = vbNullString Then Exit Sub
If ek = False Then Exit Sub
basla = InputBox("Baþlangýç ID numarasýný Giriniz.")
If basla = 1 Then Exit Sub
If basla = "" Then Exit Sub
bitis = InputBox("Bitiþ ID numarasýný Giriniz.")
If bitis = "" Then Exit Sub
If IsNumeric(basla) = False Then Exit Sub
If IsNumeric(bitis) = False Then Exit Sub
If basla > bitis Then Exit Sub
If WorksheetFunction.CountA(syfAna.Range("D2" & Rows.Count)) = 0 Then GoTo son
For i = basla To bitis
var2:
If Trim(syfAna.Range("G" & i).Value) <> "" Then maill = maill & syfAna.Range("G" & i).Value & ";"
If i Mod 50 = 0 Then Exit For
Next
i = i + 1
maill = Left(maill, Len(maill) - 1)
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.To = maill
.Subject = "2021 WINPERAX Teknik Ürün Kataloðu"
.body = "Sayýn yetkili, Ekte 2021 WINPERAX Teknik Ürün Kataloðu bulunmaktadýr. Ýyi Çalýþmalar Dileriz.Saygýlarýmýzla,"
.Attachments.Add ek
.Importance = 2
.Save
.Display
.Send ' gönder
Application.Wait (Now + TimeValue("0:00:20"))
End With
maill = vbNullString
If i >= bitis Then GoTo var
GoTo var2
var:
MsgBox "Gönderildi..", vbInformation, "Bilgi"
Set objMail = Nothing
Set objOutlook = Nothing
Set syfAna = Nothing
Exit Sub
son:
MsgBox "Hata oldu", vbCritical, "Hata"
GoTo var
End Sub