Forum

Excel'de otomatik m...
 
Bildirimler
Hepsini Temizle

Excel'de otomatik mail göndermek

8 Yazılar
7 Üyeler
2 Likes
20.2 K Görüntüleme
(@UmutKARTOPU)
Gönderiler: 172
Estimable Member
Konu başlatıcı
 

Merhaba arkadaşlar,

 

Şirketimizde logo tiger kullanılmaktadır ve sql server. Bir excel dosyası ile saatlik satış raporlarını çekmekteyiz. Satış raporlarını çekerken yalnızca yaptığımız günlük olarak tarihi değiştirmek. Tarih değişikliğinden sonra veriler otomatik olarak sql server'den çekilmektedir. Bu işlemden sonra excel tablosunun belirli içeriğini kopyalayarak mail ile her sat başı gönderiyoruz. Biz bunu sistemin otomatik olarak yapmasını istiyoruz. Örneğin saat 12:00'da mail otomatik gidecek ancak mail giderken konu başlığında'da 12:00'a ait satış raporu yazmasını istiyoruz. Bu konuda neler yapmam gerekir? Excel üzerinde bir kodmu oluşturmamız gerekir?

 

Teşekkürler 

 
Gönderildi : 15/05/2013 14:38

(@rahmidilli)
Gönderiler: 2458
Famed Member
 

Merhabalar,

 

http://support.microsoft.com/kb/816644

 

Makale faydalı olur denemek lazım makro ile olur.

 
Gönderildi : 22/05/2013 14:07

(@Anonim)
Gönderiler: 0
 
Aşağıdaki kodları kullanabilirsiniz.
   
Kodları  Module içerisine yazın ve  Zamanı_Geldi makrosunu çalıştırın. (Bunun için ilgili makroyu seçin ve  F5 'e basın.)
Her şeyde olduğu gibi istediğiniz işlemi de farklı yöntemlerle yapmak mümkün.
Eğer derseniz ki; "Ben hiç uğraşmak istemiyorum, saat tam 12:00 olduğunda bu Excel dosyam istediğimi kişilere mail olarak gitsin."  O zaman Zamanlanmış görevler'de dosyanın adını ve saatini ekleyin. Dosyanız o saatte açılsın ve gönderilsin. Bunun için Excel_ile_Mail_Gönderme  yerine  Auto_Open yazmanız yeterli olacaktır. Dosya açıldığında direkt Excel_ile_Mail_Gönderme makrosu tetiklenecek ve mailiniz gönderilecektir..
 
 
Sub Zamanı_Geldi()
    Application.OnTime TimeValue("12:00:00"), "Excel_ile_Mail_Gönderme"
End Sub

Sub Excel_ile_Mail_Gönderme()
    Dim OutApp As Object, Outmail As Object
    Set OutApp = CreateObject("Outlook.Application")
    Set Outmail = OutApp.CreateItem(0)
    Outmail.BodyFormat = 2
        With Outmail
            .To = "Buraya kendi mail adresinizi"
            .CC = "Buraya CC yapmak istediğiniz mail adresini yazın"
            .Subject = "Nuraya konuyu yazın"
            .Attachments.Add "Buraya dosya yolunu yazın"
            'Not: Dosya yolunu yazdıktan sonra tırnak işaretlerini kaldırın
            .Display
            '.Send 'Göndermek için .send den önceki ' tek tırnak işaretini kaldırın
        End With
    Set Outmail = Nothing: Set OutApp = Nothing
End Sub
 
 
Hoşça kalın !  --)(
 
 
 
Gönderildi : 16/11/2013 14:27

(@ugurkaraman)
Gönderiler: 3
Active Member
 

Merhaba Murat Bey,

Benimde aynı türden bir sorum var yardımcı olursanız sevinirim. Açıkçası makrolar konusunda iyi değilim. Bu yüzden yazdığınız kodları anlayamıyorum. Bu makroyu ben nasıl oluşturucam adım adım anlatabilir misiniz rica etsem. Yani benim excele ne yazmam gerekiyor ayrıntılı bir şekilde.

 Ben iş geliyor ve 20 gün süresi var. Bana iş geldiği anda geri sayım yapıcam ve 2 günde bir bana ve diğer arkadaşlarıma otomatik mail atmasını istiyorum. "Son 18 gün-16gün-14gün" gibi.

 Yardımlarınız için şimdiden teşekkür ederim.

 
Gönderildi : 31/12/2013 11:41

(@Anonim)
Gönderiler: 0
 

Merhaba [b]Uğur Bey[/b], mesajınızı yeni gördüm. 

Yarın gün içinde size geri dönüş yapacağım.  

 
Gönderildi : 03/01/2014 04:40

(@mesutkaya)
Gönderiler: 4
Active Member
 

Murat Bey Merhaba,

Bu konularda bikaç yerde yardımcı olduğunuz gördüğüm için size yazıyorum. Aşağıdaki kodu excele yazdım ancak tek sorun mail atarken outlook ta onay istemesi, bunu nasıl kaldırabiliriz? Yardımlarınız için teşekkürler.

Sub Zamani_Geldi()

    Application.OnTime TimeValue("11:30:00"), "Send_Range"

    

    End Sub

Sub Send_Range()

   ' Select the range of cells on the active worksheet.

   ActiveSheet.Range("A1:m35").Select

   ' Show the envelope on the ActiveWorkbook.

   ActiveWorkbook.EnvelopeVisible = True

   

   

   ' Set the optional introduction field thats adds

   ' some header text to the email body. It also sets

   ' the To and Subject lines. Finally the message

   ' is sent.

   With ActiveSheet.MailEnvelope

      .Introduction = "Düne ait satış verileri"

      .Item.To = "[email protected]"

      .Item.Subject = "Kıbrıs Satışları"

    .Item.send

    End With

   Set Outmail = Nothing: Set OutApp = Nothing

End Sub

 

 

 
Gönderildi : 25/02/2015 12:29

(@SonerAltuntas)
Gönderiler: 1
New Member
 

Arkadaşlar Merhaba ;

Söylediklerinizi aynen yaptım çok teşekkür ederim çok işime yaradı, acaba belirtiğim hücreyi hangi kod ile bir sonraki hücrenin gönderirmesini sağlayabilirim ?

Örnek veriyorum, kayıt sistemi her yeni kayıdı göndermesi için nasıl bir kod yazmam gerekir yardımcı olabilimisiniz ?

 

 

 
Gönderildi : 23/03/2015 14:50

(@alik)
Gönderiler: 1
New Member
 

Uğur beyin anlattığı konudaki gibi benim de ihtiyacım var

Bu konuda bana yardımcı olabilme şansınız var mı

 
Gönderildi : 11/09/2019 20:21

Paylaş: