• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

mail gönderme

emrebengul

Altın Üye
Katılım
5 Aralık 2015
Mesajlar
304
Excel Vers. ve Dili
Excel Vers. ve Dili Ofis 2019 TR 32 Bit
İyi günler kolay gelsin arkadaşlar. ben bi makro yazdım tuşa bastığımda mail gönderecek ama bi türlü olmadı yardımcı olur musunuz?
 
resim ekelmek için upload sitelerini kullanın ve sorunuzun cevabı sitede mevcut olup arama yaparak erişebilirsiniz
 
To kısmında türkçe karakter kullanmışşınız mail adresinde türkçe karakter olmaz, birde Attachments.Add dedikten sonra dosya adresi belirtmeniz lazım siz sadece dosya adı yazmışsınız buda olmaz, bunları düzeltirseniz olur,
 
ben yaptım yine olmadı acaba kodu yazıp gösterir misiniz size zahmet?
 
Bu kodla olabilir,

Kod:
Sub mail gönder()
    If ActiveWorkbook.Path <> "" Then
        Set OutApp = CreateObject("Outlook.Application")
        Set Outmail = OutApp.CreateItem(0)
        On Error Resume Next
          With Outmail
            .To = "satisdepartmani@sampa.com"
            .CC = ""
            .Subject = ThisWorkbook.Name
             .Display
            .Attachments.Add ThisWorkbook.FullName
            .Send
        End With
        Set Outmail = Nothing
        Set OutApp = Nothing
    End If
End Sub
 
Sub Mail()
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
Dim Sh As Worksheet

Set Sh = ActiveSheet
Set S1 = Sheets("MAIL")

For i = 3 To [MAIL!A65536].End(3).Row
Sh.Range("B2:F2").AutoFilter Field:=5, Criteria1:=S1.Cells(i, "A").Text

With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Set rng = Nothing
Set rng = ActiveSheet.UsedRange
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
strbody = "BU KISMA MAİL İÇERİSİNDE ÇIKMASINI " & vbNewLine & vbNewLine & _
"İSTEDİĞİNİZ BİR MESAJ VARSA YAZABİLİRSİNİZ" & vbNewLine & _
"" & vbNewLine & _
"" & vbNewLine & _
""
On Error Resume Next
With OutMail
.To = S1.Cells(i, "B")
.CC = ""
.BCC = ""
.Subject = "MAİLİN KONUSUNU BU KISMA YAZABİLİRSİNİZ "
.HTMLBody = strbody & RangetoHTML(rng)
.Send
End With
On Error GoTo 0
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
Set OutMail = Nothing
Set OutApp = Nothing
Next
End Sub
Function RangetoHTML(rng As Range)
Dim fso As Object
Dim ts As Object
Dim TempFile As String
Dim TempWB As Workbook
TempFile = Environ$("temp") & "/" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"
rng.Copy
Set TempWB = Workbooks.Add(1)
With TempWB.Sheets(1)
.Cells(1).PasteSpecial Paste:=8
.Cells(1).PasteSpecial xlPasteValues, , False, False
.Cells(1).PasteSpecial xlPasteFormats, , False, False
.Cells(1).Select
Application.CutCopyMode = False
On Error Resume Next
.DrawingObjects.Visible = True
.DrawingObjects.Delete
On Error GoTo 0
End With
With TempWB.PublishObjects.Add( _
SourceType:=xlSourceRange, _
Filename:=TempFile, _
Sheet:=TempWB.Sheets(1).Name, _
Source:=TempWB.Sheets(1).UsedRange.Address, _
HtmlType:=xlHtmlStatic)
.Publish (True)
End With
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.GetFile(TempFile).OpenAsTextStream(1, -2)
RangetoHTML = ts.ReadAll
ts.Close
RangetoHTML = Replace(RangetoHTML, "align=center x:publishsource=", _
"align=left x:publishsource=")
TempWB.Close SaveChanges:=False
Kill TempFile
Set ts = Nothing
Set fso = Nothing
Set TempWB = Nothing
End Function
 
ikisinide denedim bkts34 sizin ki mail açılıyor hemen kapanıyor? bdrymrl sizinki hiç açılmadı hata verdi
 
Bende açılıp kapanmıyor veya açılıyor kapanıyor da çok hızlı oluyor ben görmüyorum demekki :) Ama mail gönderiyor kodda sorun yok yani.
 
Son düzenleme:
teşekkürler saolun yardımlarınız için
 
Geri
Üst