burakturk
Altın Üye
- Katılım
- 12 Şubat 2013
- Mesajlar
- 53
- Excel Vers. ve Dili
- Türkçe Excel 2019
- Altın Üyelik Bitiş Tarihi
- 16-06-2025
Merhaba arkadaşlar.
VBA ile mail gönderiyorum ancak çoğu zaman otomatik olarak göndermiyor mailimi. Mail gönderme ekranını çoğu zaman açık bırakıyor, dökümanı kapatıp açınca bu sefer gönderiyor, ama bazen bu şekilde de göndermiyor. Maili açık bırakıyor ekranda, arkada kalıyor öylece. Bir çok çözüm denedim ama bir türlü sorunumu çözemedim. Sadece mail gönderme modülünü çalıştırdığımda sorun çıkmıyor.. Windows Görev Zamanlayıcısı ile sorunsuz çalıştırabiliyorum dosyalarımı. Yaptığım çalışma adım adım aşağıdadır;
--Windows Görev Zamanlayıcı üzerinden belirlenen saatlerde dosyayı açıyorum--
BuÇalışmaKitabı içinde;
--Uyarı formu kodları--
--send_mail_xlsx modülü-
--Timer modülü--
Nasıl bir yöntem ile sorunumu çözeceğimi anlayamadım. Mail göndermeden önce bir süre bekletmem mi gerekiyor acaba?
Ayrıca outlook arkaplanda açık ise "run-time error "-2136959355" sunucu çalıştırması başarısız" hatası alıyorum.
bunların çözümü ile alakalı yardımcı olabilecek birileri var mıdır acaba? teşekkür ederim
VBA ile mail gönderiyorum ancak çoğu zaman otomatik olarak göndermiyor mailimi. Mail gönderme ekranını çoğu zaman açık bırakıyor, dökümanı kapatıp açınca bu sefer gönderiyor, ama bazen bu şekilde de göndermiyor. Maili açık bırakıyor ekranda, arkada kalıyor öylece. Bir çok çözüm denedim ama bir türlü sorunumu çözemedim. Sadece mail gönderme modülünü çalıştırdığımda sorun çıkmıyor.. Windows Görev Zamanlayıcısı ile sorunsuz çalıştırabiliyorum dosyalarımı. Yaptığım çalışma adım adım aşağıdadır;
--Windows Görev Zamanlayıcı üzerinden belirlenen saatlerde dosyayı açıyorum--
BuÇalışmaKitabı içinde;
Kod:
Private Sub Workbook_Open()
Uyarı.Show
End Sub
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
ResetTimer
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
ResetTimer
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
ResetTimer
End Sub
Kod:
Private Sub Refresh()
ActiveWorkbook.RefreshAll
End Sub
Private Sub CommandButton1_Click()
DoEvents
End
End Sub
Private Sub CommandButton2_Click()
Unload Me
Call Excel_ile_Mail_Gönderme
End
End Sub
Private Sub UserForm_Activate()
ActiveWorkbook.RefreshAll
For i = 60 To 1 Step -1
DoEvents
Label1.Caption = i
Application.Wait (Now + TimeValue("0:00:01"))
Next i
Call Excel_ile_Mail_Gönderme
Unload Me
End Sub
Kod:
Sub Excel_ile_Mail_Gönderme()
ActiveWorkbook.RefreshAll
Application.DisplayAlerts = False 'tüm bildirimleri yok sayar, varsayılan seçeneği uygulayarak devam eder
ChDir "C:\Users\burak\Desktop\GKFD Arşiv" 'dosyanın kayıt edileceği konum
ActiveWorkbook.SaveAs Filename:="GUNLUK KESILEN FATURALAR DOKUMU - " & Date & ".xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False 'dosyanın kaydedileceği isim ve tarih
Dim OutApp As Object, Outmail As Object
Set OutApp = CreateObject("Outlook.Application")
Set Outmail = OutApp.CreateItem(0)
Outmail.BodyFormat = 2
With Outmail
.To = "xxx" 'gönderilecek mail adresini bu kısma yazın
.CC = "xxx" 'bilgi olarak kimlere gönderileceğini buraya yazın
.Subject = "Günlük Kesilen Faturalar Dökümü - " & Date 'konu kısmında ne görünmesini istiyorsanız buraya yazın
.Attachments.Add "C:\Users\burak\Desktop\GKFD Arşiv\GUNLUK KESILEN FATURALAR DOKUMU - " & Date & ".xlsx" 'gönderilecek raporun konumunu buraya yazın
.Body = "Noyan Bey & Zafer Bey Merhaba," & Chr(10) & _
Date & " tarihli günlük kesilen faturalar dökümü ekte bilgilerinize sunulmuştur." 'mail içeriğinde ne yazmak istiyorsanız buraya yazın
.Display
SendKeys "%G", True
End With
Set Outmail = Nothing: Set OutApp = Nothing
End Sub
Kod:
Public CloseDownTime As Variant
Public Sub ResetTimer()
On Error Resume Next
If Not IsEmpty(CloseDownTime) Then Application.OnTime EarliestTime:=CloseDownTime, Procedure:="CloseDownFile", Schedule:=False
CloseDownTime = Now + TimeValue("00:30:00") ' hh:mm:ss
Application.OnTime CloseDownTime, "CloseDownFile"
End Sub
Public Sub CloseDownFile()
On Error Resume Next
Application.Quit
End Sub
Ayrıca outlook arkaplanda açık ise "run-time error "-2136959355" sunucu çalıştırması başarısız" hatası alıyorum.
bunların çözümü ile alakalı yardımcı olabilecek birileri var mıdır acaba? teşekkür ederim