Skip to main content

AccessTr.neT


Excel Outlook İle Dosya Ekli Toplu Mail Gönderme

Oğuz Türkyılmaz
Oğuz Türkyılmaz
45
3701

Excel Outlook İle Dosya Ekli Toplu Mail Gönderme

#18
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("D2Lol" & 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
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
RE: Excel Outlook İle Dosya Ekli Toplu Mail Gönderme - Yazar: feraz - 10/04/2021, 10:59
Task