Makro İle Excelden Mail Göndermek
Bu yazımda sizlere Excel’de makro yolu ile nasıl mail gönderebileceğinizi anlatmaya çalışacağım.
Bu işlemin birçok yöntemi bulunmaktadır. Ben sizlere, bir tablonun nasıl mail gönderilebileceğini ve tabloya ekleme yapıldığında dinamik alanın nasıl oluşturulabileceğini anlatacağım.
NOT: Bilgisayarınızda Outlook kurulu olmalıdır. Ayrıca bcc kısmında benim mail adresim vardır. Örnek amacıyladır. Ona da dikkat ediniz.
Ayrıca seri olarak mail gönderme videosu ve dosyası için tıklayın.
Bir teşekkürü çok görmeyelim lütfen 🙂
Aşağıya yorum bırakabilir ve web sayfamı arkadaşlarınızla paylaşabilirsiniz… 🙂
Dim Sayfa As Worksheet Dim Alan As Range Dim daralan As Range 'Mail kısmının boş bırakılması durumunu kontrol eder. If Cells(2, 2) = "" Then GoTo HATA 'Herhangi bir hata ile karşılaşırsa, makroyu sonlandırır. On Error GoTo HATA With Application .ScreenUpdating = False .EnableEvents = False End With 'Mail tablosuna dinamiklik kazandırmak için tabloda kaç satır olduğunu bulur. saydir = WorksheetFunction.CountIf(Range("D:D"), "<>") + 1 'Dinamik alan tanımlanır. DinamikAlan = "D2:" & "G" & saydir 'Dinamik alan mail alanı olarak kurulur. Set Alan = Worksheets("Sayfa1").Range(DinamikAlan) Set Sayfa = ActiveSheet With Alan .Parent.Select Set daralan = ActiveCell .Select ActiveWorkbook.EnvelopeVisible = True With .Parent.MailEnvelope .Introduction = "Otomatik Mail. BYMMB.COM tarafından tasarlanmıştır." With .Item .To = Cells(2, 2) .CC = Cells(3, 2) .Subject = Cells(1, 2) .bcc = "" .Send End With End With daralan.Select End With Sayfa.Select HATA: With Application .ScreenUpdating = True .EnableEvents = True End With
Faydalı olması dileğiyle…
Merhaba,yazınızı okudum benim şu şekilde bir sıkıntım var…
Sayfa üzerinde yazdırma alanı belirlenmiş bir alan var bu alana pdf ye çevir diye bir buton kodlaması yazdım ve çeviriyor çevirirken yazdırma alanı içerisindeki D6 hücresinden dosya kaydı yapacağı müşterinin adını otomatik çekiyor..Buraya kadar herşey normal bir buton kodlaması daha yaptım yine d12 deki mail adresine göre yazdırma sayfası içindeki kayıtlı olan dosyayı mail atmak istiyorum fakat Attachment yapacağım yerde dosya yolunu yazmam gerek ben yine müşteri adından çeksin istiyorum umarım anlatabilmişimdir…Cevabınızı bekliyorum teşekkürler..
Örnek dosyanızı admin@bymmb.com adresine iletebilirseniz, yardımcı olurum. Saygılar.
bilgi işlem merkezinde kullanmak üzere diğer kullanıcıların excel üzerinden isteklerini benim mail adresime düşmesini istiyorum ve hocam sizin kodu kullanmaya çalıştım çalıştıramadım. yardımcı olursanız sevinirim.
Merhaba Arkadaşlar
Benim bir düşüncem var;
Bizim grup stok kayıtlarını tutuyor. Tahmin ettiğiniz gibi binlerce malzeme cinsi ve ilgili hücre var ve koşullu biçimlendirme ile kritik seviyeye gelen malzemeleri görebiliyoruz. Biz bir adım daha ileri giderek herhangi bir malzeme kritik seviyeye düştüğünde ilgili kişiler yani yaklaşık 10 kişiye şu malzeme kritik seviyeye düştü diye otomatik mail atması sizce olabilir mi ?
görüş ve önerileriniz için şimdiden çok teşekkür ederim.
Merhaba Hocam
vermiş olduğunuz mail gönderme ile ilgili excel için teşekkürler gerçekten çok işime yaradı emeği geçenlerin eline sağlık..teşekkürler.. bir ilave olarak kimden kısmını ekleyebilirmiyiz…FROM
emeğinize sağlık, paylaşımlarınız çok kaliteli ve özenli.
bu kadar emek veriyorsunuz 5 yorum yapılması çok ilginç, toplum olarak duyarsız olduğumuz gösteriyor. eminim buradan öğrenip iş yerinde hava atan binlerce kişi vardır 🙂
siz yine de paylaşımlarınıza devam edin, teşekkürler.
İçlerinden de olsa Allah razı olsun demişlerse bana yeter aslında 🙂
Çünkü sadece bunun için paylaşıyorum.
Yorumunuz için teşekkürler…
çok teşekkürler :))
ellerinize sağlık
o kadar işime yaradı ki ay sonlarında saatlerimi alan bildirimlerimi
şimdi tek tuşla halledebiliyorum
çok teşekkürler
Rica ederim. Yorumunuz için teşekkür ederim…
hocam, elinize sağlık
sade bir anlatımla kurgulamışsınız. çok işimi gördü allah razı olsun
saygılar
Allah hepimizden razı olsun. Saygılar.
Teşekkürler
Teşekkürler
elinize sağlık , Teşekkürler, güzel bir raporlama aracı olmuş ancak buradaki kodlarda sabit bir düğmeye basılmadan , otomatik olarak belirli bir tarih ve saatte gönderme seçeneği de olsa daha da iyi olurmuş…
Hocam selam,
Introduction kısmında 2-3 satır halinde yazmak istiyorm mesajı. düzenlerken olmuyor hata alıyorum. Önerin nedir?
Teşekkürler yazı için de.
Her satırdan sonra alt çizgi(_) kullanın.
site çok faydalı, emeklerin için teşekkürler.
Ustad paylaştığın tüm bilgiler için hayırlı isteklerin kabul olsun
.bcc = “admin@bymmb.com” birde mail bu adresten mi gitti gözükecek
bcc kısmına ne yazarsanız o kişiye de mail olarak iletilir.
Güzel Bir Çalışma Teşekkürler. Bunu Birde PDF olarak ekleyebilsek süper olur.
Hocam elinize sağlık çok güzel bir çalışma olmuş
Elinize sağlık teşekkürler
Hocam, macro için eline sağlık, teşekkür ederim ancak bir sorum olacak.
Macro sadece sheetin içindeki dinamik alanı mailin içine yapıştırıp gönderiyor. Sheetin bağlı olduğu workbooku komple nasıl göndereceğiz?
İyi çalışmalar.
çok teşekkürler,çok faydalı oldu
elinize saglik
Teşekkür ediyorum. işime yaradı. gerekli düzenlemeleri yaptım. aktif olarak kullanıyoruz. tekrar teşekkür ederim.
Selamlar,
exceldeki bir alanı ve yaptığım dosyayı da ekleyerek otomatik mail atmaya çalışıyorum ama sürekli kodu doğru yazdığımdan emin olsam da hata alıp duruyorum. Outlook kurulu bilgisayarımda. Ancak neden hata aldığımı incelerken sizin dosyanızı buldum. Bunu da denedim ancak yine hem mail gitmedi hem de excel outlook gibi açıldı. Oraya manuel yazınca gidiyor. Gerek benim dosyamda gerek kendi yüklediğiniz dosyada bana yardımcı olabilir misiniz?
Merhaba.
Tam olarak nasıl bir yöntem istiyorsunuz?
Güzel olmuş ellerinize sağlık
Hocam, merhabalar. Programı indirdim ancak istediğim şekilde çalışmadı. Benim istediğim, 500 kişilik bir listedeki, örneğin a kolonundaki mail adreslerine aynı maili atması. Aynı anda eğer yapılabilirse, aynı dosyada mesela b kolonunda yazan isimleri de mail metninde belli bir yere yazabilirse süper olur. Mümkün müdür ?
Evet mümkündür. 🙂
Bununla alakalı bir eğitim videosu hazırlayacağım.
Yukarıda bahsi geçen video çekildi mi bilgi alabilir miyim?
Merhaba, bu video çekildi mi? varsa linkini paylaşabilir misiniz?
TEŞEKKÜRLER MORUK 😀
Kardeş Eline Sağlık.
KOLAY GELSIN ÖNCELİKL EMEGINE SAGLIK FAKAT BENIM SÖYLE BİRŞEYE İHTİYACIM VAR.
MANTIGI BUNA YAKIN BEN ELİMDE BULUNAN ECXEL TABLOSUNDA KI KİŞİLERE TOPLU MAIL ATMAK ISTIYORUM BCC
EXCEL ÜZERİNDE KAYITLI BIRDAN FAZLA MAIL ADRESI AMA 1 ADET BILGILENDIRME MAILI
dosyayı e-mail ile gönderirken .Send kodundan sonra ekranda gönderim için onay penceresi çıkıyor. Bu kısmı nasıl kaldırabiliriz.
Autosend komutu kullanmanız gerekir.
teşekkürler ellerinize sağlık
Teşekkür ederim:), çözene kadar size birkaç mail atmış olabilirim kusura bakmayın=D
Merhaba Arkadaşım
Ellerine Sağlık,Çok işime yaradı.
güzel çalışma beyninize sağlık
elinize sağlık tam aradığım bir konu
çok teşekkürler
eyvallah üstad çok işime yarayacak. Not: bir muhasebeci :)))
Admin eline sağlık güzel bir çalışma. Peki bunu kodlar ile belirli aralıklar ile nasıl gönderttirebiliriz. örneğin her hafta perşembe günü göndersin
Elinize sağlık
elinize sağlık ve paylaşım için teşekkürler. 🙂
Teşekkürlşer elinize sağlık
Ellerine Sağlık
teşekkürler 🙂
Hocam ellerine sağlık çok işime yarayacak.. Bu maile dosya eklememiz mümkün mü?
Merhabalar Mustafa Bey,
Öncelikle bu bilgilendirici, faydalı, yardımsever paylaşımlarınız için teşekkürü bir borç bilirim. Ben sağlık sektöründe çalışmaktayım ve insanlara randevu tarihleri geldiğinde mail atmaktayım. Bunun için bir Excel dosyasında A sütununda hastaya ait mail adresi, B sütununda mailin gönderilmesi gereken tarih, C sütununda ise mailin içeriği var (2:2000 satırları arasında, her satırda kendine özgü olacak şekilde devam ediyor ve veriler başka sayfadan çekiliyor). Örneğin ben B5 hücresindeki tarih geldiğinde A5 hücresindeki mail adresine, C5 hücresindeki metni otomatik olarak (info@..hospital.com adresinden) gönderebilir miyim? Bir de bunu bir tuşa basmadan, B sütunundaki tarih geldiğinde otomatik olarak göndermesi sağlanabilir mi? Vereceğiniz her türlü cevap için şimdiden teşekkür eder, iyi günler dilerim. Saygılar
Elinize sağlık. Teknolojiyi kullanarak hayatı kolaylaştırmak böyle bir şey. yıllardır kendi başıma excel ile bir çok işimi yaparak zamandan nasıl tasarruf ederim uğraşı içindeyim. bunu yaparken de hem öğrenmek hemde öğretmekte güzel bir şey.
Nilay Karabaşoğulları yazmış olduğu işlemin aynısından benimde ihtiyacım var. Yardımcı olabilirseniz sevinirim. Aynı komutlar olursa da olur. hücreleri değiştirebilirim.
Şimdiden teşekkürler.
Öncelikle teşekkürler. Bu send den önce alıcı anımsatıcı ve okundu satırlarında ekleye bilirmiyiz. Özetle otomatik gönderdiğim mailin okunduğu ve alıcı anımsatıcısında olmasına ihtiyacım var.
Merhaba yapmış olduğunuz exceli sorunsuz olarak kullanıyordum fakat şirket bilgisayarı windows 10 güncellemesi yaptıktan sonra mail göndermede sıkıntı oluştu. Gönder Gitsin butonuna bastıktan sonra excel sayfasının üst kısmında outlook gibi From Sent To kısımları çıkıyor ve elle doldurulması isteniyor. Bunu düzeltmenin bir yolu var mı ?
Excel sürümü nedir?
hocam merhaba bende de Cenk Bey ile aynı sorun yaşıyorum. uzun süreden bu yana sorunsuz çalışıyordu hatta win10 ve excel2016 da da sorun yaşanmadı ancak dün şirkete bir win güncelleme geldi şuan aynen Cenk Bey deki sorunu yaşıyorum butona basıyorum excel sayfasının üst kısmında outlook gibi From Sent To kısımları çıkıyor ve excel donuyor. Sorun ne anlayamadım acil yardımcı olabilirseniz çok sevinirim. İlginiz ve emeğiniz için teşekürler
Bir office güncellemesi ile alakali olduğunu düşünüyorum. Güncellemelerden K ile başlayan herhangi bir update yapılmış mı kontrol eder misiniz?
hocam peki dosya yolunu belirttiğimiz klasördeki rar dosyalarını excel üzerinden toplu mail atabilirmiyiz.
Elinize, emeğinize sağlık. Çok işime yaradı. İmkan olsada bu gibi paylaşımların karşılığını maddi olarak verebilsek.
Elinize sağlık.
Hocam merhaba
Bu sisteme ekstra olarak zaman ayarı dahil edebilir miyiz? Örneğin bir sütunda 50 tane mail var, ben bunlara mailleri her 1 dakik da 2 veya 3 tanesine mail göndermek istiyorum. Böyle bir şey mümkün mü?
Eklenir ancak tavsiye etmem. Hem verimli olmaz hem de bilgisayarı çok yarar. Çünkü arka planda sürekli refresh komutu çalışacak.
Hocam merhaba,
Sorunsuz ve harika bir makro olmuş elinize sağlık.
1 sorum olacaktı; outlookta tanımlı imzamı bir türlü ekleyemedim dosya yolu “C:\Users\gokhan\AppData\Roaming\Microsoft\Signatures\imza.htm”. Gerekli kodlar ile yapıyorum hata vermiyor ama sadece tabloyu alıyor.
yardım edebilirseniz sevinirim.
Gerekli ayarlamaları outlook üzerinden yapın. Outlookta default imza eklerseniz, otomatik gider.
Hocam hızlı geri dönüş için teşekkür ederim.
Dediğiniz gibi imza yeni iletide, yanıtlananda veya iletilende varsayılan olarak ayarlı fakat görünmedi bir türlü. Outlook versiyonu ile alakalı bir durum olabilir mi(2010 kullanıyorum). Resimli veya resimsiz imza denedim yapamadım.
Hocam hızlı geri dönüş için teşekkür ederim.
Dediğiniz gibi imza yeni iletide, yanıtlananda veya iletilende varsayılan olarak ayarlı fakat görünmedi bir türlü. Outlook versiyonu ile alakalı bir durum olabilir mi(2010 kullanıyorum). Resimli veya resimsiz imza denedim yapamadım.
Hocam merhaba
makroda yazılan sütunlar yerine mouse ile seçtiğimiz alanı nasıl mail göndeririz?
Dinamik alanı mouse ile seçtiğiniz alan olarak belirlemek için koda aşağıdaki satırları ekleyebilirsiniz.
Dim daralan As String
daralan = Selection.Address
Bu sayede mouse ile seçtiğimiz alanı mail olarak gönderebiliriz.
hocam yada sütunlardan birine tarih eklense makroda sadece bugun tarihli sütun ve satırları göndermek mümkünmüdür desteğinizi rica ediyorum 🙂
bir kaç hata aldım belirttiğiniz satırları kodda nereye ekleyeceğim kusra bakmayın biraz acemiyim bu işde
hocam kodu eklesemde hata alıyorum nereye eklemem gerekiyor
Private Sub CommandButton1_Click()
Dim Sayfa As Worksheet
Dim Alan As Range
Dim daralan As Range
If Cells(2, 2) = “” Then GoTo HATA
On Error GoTo HATA
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
saydir = WorksheetFunction.CountIf(Range(“D:D”), “”) + 1
DinamikAlan = “D2:” & “G” & saydir
Set Alan = Worksheets(“Sayfa1”).Range(DinamikAlan)
Set Sayfa = ActiveSheet
With Alan
.Parent.Select
Set daralan = ActiveCell
.Select
ActiveWorkbook.EnvelopeVisible = True
With .Parent.MailEnvelope
.Introduction = “Otomatik Mail. BYMMB.COM tarafından tasarlanmıştır.”
With .Item
.To = Cells(2, 2)
.CC = Cells(3, 2)
.Subject = Format(Date, “DD.MM.YYYY”) & ” – Transfer Listesi..”
.bcc = “admin@bymmb.com”
.Send
End With
End With
daralan.Select
End With
Sayfa.Select
HATA:
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
Teşekkürler elinize sağlık
Sayın Yönetici,
Siteye yeni girdim. Çok çok beğendim.
Siteyi arkadaş ve dostlarıma önereceğim.
Sevgi ve saygılar
Merhaba Emeklerinizi bu şekilde umuma hediye ettiğiniz için çok teşekkür ederiz.
yok artık 4 sene olmuş ve hala sayfa aktif!!! kod için teşekkürler. benimde bir sorum var. bu mailleri şu tarihte gönder şeklinde bir koşul koymak istiyorum mümkünmüdür.
Ben hayatta olduğum sürece paylaşımlarım da hayatta kalacak 🙂
Kodları bir modül içine yazıp, isim verin. “Gonderici” mesela.
Sonra butona şu kodları ekleyebilirsiz;
dondur:
if now()=timevalue("12:00:00") then call Gonderici
if now() <> timevalue("12:00:00") then goto dondur
SAYFA AKTİF DERKEN halen RAĞBET GÖRÜYOR ANLAMINDA SÖYLEDİM. BUDA SİZİN BAŞARINIZ TABİİKİ. YALNIZ BEN TARİH OLAYINI BECEREMEDİM. KOŞULU SAAT OLARAK DEĞİLDE TARİH OLARAK YAPMAK İŞİMİ GÖRÜR. FIRSATINIZ OLURSA EKLİ DOSYANIZI ONA GÖRE DÜZENLEYEREK mail adresime gönderebilirseniz sanırım bayağı mutlu olurum 🙂 . YOKSA ARTIK BAKACAZ Bİ ÇARE ÇOK TEŞEKKÜRLER.
vallahi pratik ve güzel bir çalışma olmuş teşekkürler paylaşım için elinize sağlık
merhaba,
peki bu mail otomatik olarak gider mi? Bir hücredeki sayı mesela 10’dan az olunca mail gönder gibi. böyle bir kurgu yapıla bilir mi?
.Parent.Select kodu sarı renkte duruyor ve göndere bastığımda üst kısımda, gönderilecek adres, bcc ve konu kısmı açılıyor. Ne yapmam gerekiyor. Teşekkürler
Merhaba Ellerine Sağlık
teşekkürler
Eline sağlık Hocam millet bundan para kazancam diye kasmışta kasmıs 3 gündür arıyorum bir tek bu çalıştı öbürlerinde hep para vermeden burundan kıl aldırmıyorlar allah senden razı olsun
Hocam outlook kurulu ama gönder gitsine bastığımda göndermiyor.Ne yapmam lazım?
hocam bu sorunu hallettim ama sizi bcc’den çıkartmak istiyorum.Nasıl yapabilirim? Kod kısmındaki ilgili satırı sildim ama yine de olmadı.
Paylaşımınız için çok teşekkür ederim.
Elinize sağlık Office 2016 da hata veriyor..
henüz sayfanızı yeni gördüm ama işime çok yarayacağından eminim şimdiden teşekkürler üstadım.
Merhaba
Ellerinize sağlık,Tekrar tekrar teşekkür ederim.Bu maile ek dosya eklemek istiyorum,yardımcı olursanız sevinirim.
teşekkürler hocam.elinize emeğinize sağlık.
hocam elinize sağlık. Peki bir kaç sayfalı excel dosyasını makro yoluyla mail atabilir miyim ?
teşekkürler
bymmb Hocam Gmail Olarak Kullanmam için paylaşımınız ki kodlar da nerelerde nasıl değişiklik yaparak bunu sağlayabiliriz teşekkürler
merhabalar,
öncelikle emeğinize sağlık;
benim sorum outlook üzerinde birden fazla mail adresi mevcut hangi mail ile gönderim sağlayacağını nasıl belirlerim?
(varsayılan olarak ayarladığım da değişiklik olmuyor)
Sevgiler,
merhaba. ilgili alanı resim formatında göndermek için nasıl bir işlem yapmalıyız. teşekkürler.
ilk gördüğümde işte bu dedim, gözlerim yerinden çıktı sanki, bu çalışmayı arıyordum,elinize sağlık,
Güzel çalışma, teşekkürler.
Merhaba,
elinize sağlık, çok güzel bir çalışma olmuş. Mutlaka herkesin bir şekilde ihtiyacı olur. Yıllar önce bir müdürümün bunu nasıl yaptığını şimdi anlamış oldum 🙂
Benim ihtiyacım daha basit bir şekli. Şöyle ki;
Sayfa1 de A18 hücresinde hesaplama sonucu otomatik değişken bir sayı oluyor. Bu sayının -1 den küçük yada +1 den büyük olma durumunda sabit iki maile (to, cc şeklinde) otomatik olarak maili göndermesi. (Yani hücredeki sayı -1< x<+1 dışında farklı bir sayı olduğunda.)
Umarım anlatabilmişimdir.
Yardımcı olursanız çok sevinirim.
Teşekkürler, iyi çalışmalar dilerim.
Merhabalar,
Çok guzel bir blog, biraz bcc mailleriyle sizi rahatsız etmiş olabilirim kusura bakmayın 🙂
Söyle bir sorum olacaktı; bu macroya göre active shhetin hepsi gidiyor ya misal benım gizlediğim celler de mailde cıkıyor buna nasıl engel olabılırım yanı sadece acık olan goruntuyu gondermesını nasıl sağlayabılırım acaba??
ÇOK TEŞEKKÜR EDERİM