Forum
Sub Auto_Open()
Application.OnTime TimeValue("09:39:00"), "Mail_Gonderimi"
End Sub
Sub Mail_Gonderimi()
Dim Outapp As Object
Dim Outmail As Object
Set Outapp = CreateObject("Outlook.Application")
Set Outmail = Outapp.CreateItem(0)
With Outmail
.To = ""
.CC = ""
.BCC = ""
.Subject = "Deneme"
.Body = "Merhaba Ümit Bey," & Chr(13) & _
"Günlük Rapor Ektedir." & Chr(13) & _
"Bilginize Sunarım." & Chr(13) & _
"Saygılarımla."
.Send
End With
Set Outmall = Nothing
Set Outapp = Nothing
End Sub
Ya da kalın altı çizili kısma tarih ekleme istiyorum ama saatin yanına tarih yazınca hata veriyor acaba ne yazmam gerekiyor.
[b]Uğur Bey[/b] burada bahsettigim şekilde yaparsanız istediginiz olacaktır; http://www.cozumpark.com/forums/thread/411619.aspx
Murat Bey, forumu karıştırırken en çok rastladığım isimlerden birisiniz sorulara cevap vermedeki hassasiyetinizden dolayı öncelikle teşekkür ederim.
Birkaç sorum daha olacak murat bey yardımcı olursanız sevinirim.
* Makroyu çalıştırdığımda belirtilen saat geldiğinde maili göndermek için benden onay istiyor ben bu onayın olmasını istemiyorum direk göndersin istiyorum. Bunun için ne yapabiliriz acaba?
* Bir de exceli açtığımda belirttiğim saat olmamasına rağmen tekrar yukarıda belirttiğim onayı aldıktan sonra excel açılıyor ve tekrar mail gönderiyor. Neden kaynaklanıyor acaba? Yazdığım kod aşağıdaki şekilde
Sub Auto_Open()
Application.OnTime DateValue("02.01.2014") + TimeValue("10:36:00"), "Mail_Gonderimi"
End Sub
Sub Mail_Gonderimi()
Dim Outapp As Object
Dim Outmail As Object
Set Outapp = CreateObject("Outlook.Application")
Set Outmail = Outapp.CreateItem(0)
With Outmail
.To = "dljfklsd@lşllklşkdfl.com"
.CC = "sdfşklskşd@dlşkflfdskdfl.com"
.BCC = ""
.Subject = "Deneme"
.Body = "Merhaba Dlsdfl Hanım," & Chr(13) & _
"proje çalışmasının bitimine 19 gün kalmıştır." & Chr(13) & _
"Bilginize Sunarım." & Chr(13) & _
"Saygılarımla."
.Send
End With
Set Outmall = Nothing
Set Outapp = Nothing
End Sub
Yardımlarınız için şimdiden teşekkür ederim.
Murat Bey, forumu karıştırırken en çok rastladığım isimlerden birisiniz sorulara cevap vermedeki hassasiyetinizden dolayı öncelikle teşekkür ederim.
Birkaç sorum daha olacak murat bey yardımcı olursanız sevinirim.
* Makroyu çalıştırdığımda belirtilen saat geldiğinde maili göndermek için benden onay istiyor ben bu onayın olmasını istemiyorum direk göndersin istiyorum. Bunun için ne yapabiliriz acaba?
* Bir de exceli açtığımda belirttiğim saat olmamasına rağmen tekrar yukarıda belirttiğim onayı aldıktan sonra excel açılıyor ve tekrar mail gönderiyor. Neden kaynaklanıyor acaba? Yazdığım kod aşağıdaki şekilde;
Yardımlarınız için şimdiden teşekkür ederim.
Merhaba Uğur Bey,
Bir faydam dokunuyorsa ne mutlu bana.
Sorunuzla ilgili olarak; sorgusuz mail göndermek için API'lere ihtiyacınız olacak.
İşletim sisteminiz 32-bit ise; kodlarınızın en üstüne bu ShellExecute API'sini ekleyin;
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
İşletim sisteminiz 64-bit ise; kodlarınızın en üstüne bu ShellExecute API'sini ekleyin;
Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hwnd As LongPtr, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As LongPtr
Ya da bu kodları yine kodların en üst satırında kullanarak bırakın bu kadarı bilgisayarınız versin;
#If VBA7 And Win64 Then
Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hwnd As LongPtr, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As LongPtr
#Else
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
#End If
Göndermek için de kodlarınızdaki .Send satırı yerine şu kodları yazın;
ShellExecute 0&, vbNullString, URL, vbNullString, vbNullString, vbNormalFocus
Application.Wait (Now + TimeValue("0:00:02"))
Application.SendKeys "%s"
Şimdi sizden onay istemeden mail gönderiyor olması gerek.
Diğer sorunuzla ilgili olarak bir Excel Destek Forumundan gerekli desteği almışsınız zaten.
Hoşça kalın !
Selamlar,
Mutabakat formu hazırlamaya çalışıyorum. Excel sayfamın sol tarafında veri listem(500 satır) ve sağ tarafda ise formum var. her satır için form oluşturmak yani pdf dosyası hazırlamak ve bunları listemin yanında bulunan mail adreslerine göndermek istiyorum. Yardımcı olacak arkadaşlara şimdiden teşekkürler. Ben sadece ilk satır için pdf oluşturabildim.
Sub pdf()
Range("g15:j15").Value = Range("a5:d5").Value
Range("G1:M58").Select
ActiveSheet.PageSetup.PrintArea = "$G$1:$M$58"
If Sheets("Sayfa1").Range("b5") = "" Then
MsgBox "b5 hücresi boş!"
Else
Sheets("Sayfa1").ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Users\ugurya\Desktop\" & Sheets("Sayfa1").Range("b5") & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
End Sub