Excel'de VBA komut dosyalarının kullanılması herhangi bir programlama bilgisi gerektirmez. VBA, tüm PC bilgilerini içeren bir e-tablo raporu oluşturma, doğrudan bir e-tablodan e-posta gönderme gibi birçok gelişmiş görevi gerçekleştirmenize yardımcı olur ...
Microsoft Excel'den e-posta göndermek için birkaç basit komut dosyasına ihtiyacınız var. Excel ofis yazılımından en iyi şekilde yararlanmak istiyorsanız, bu özelliği e-tablonuza eklemekten korkmayın .
Excel'den e-posta
Doğrudan Microsoft Excel'de e-posta göndermek istemenizin birçok nedeni vardır. Örneğin, çalışanlarınız belgeleri ve elektronik tabloları haftalık olarak güncelleştirir ve bu işlem tamamlandığında veya bazen aynı çalışma kitabındaki tüm kişilere e-posta göndermek istediğinizde e-posta bildirimleri almak istersiniz. at ...
Karmaşık bir Excel e-posta komut dosyası kullanmayı düşünmelisiniz, ancak aslında çok basit. Bu makalede, Excel VBA'da İşbirliği Veri Nesneleri (CDO) adında uzun süredir mevcut olan bir özellikten yararlanmanız için size rehberlik edilecektir .

CDO, ilk sürümlerden itibaren Windows'da kullanılan bir mesajlaşma bileşenidir. Eskiden CDONTS olarak adlandırılırdı. Windows 2000 ve XP doğduktan sonra, "Windows 2000 için CDO" onun yerini aldı. Bu bileşen, Microsoft Word veya Excel'deki VBA kurulumuna dahildir ve her zaman kullanılabilir.
VBA ile Windows ürünlerinde e-posta göndermek için bu bileşeni kullanmak son derece kolaydır. Örneğin, bu makalede, bir hücrede sonuç içeren e-postalar göndermek için Excel'de CDO kullanılır.
Adım 1: VBA Makrosu oluşturma
İlk olarak, Excel Geliştirici sekmesine gidin > Kontroller panelinde Ekle'ye tıklayın , ardından bir komut düğmesi seçin.
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Bu çalışma sayfasına sürükleyin, ardından Geliştirici şeridinde Makrolar'ı tıklayarak yeni bir makro oluşturun .
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Oluştur düğmesine tıkladığınızda VBA düzenleyicisini açar.
Düzenleyicide Araçlar> Referanslar'a giderek CDO kitaplığına bir başvuru ekleyin .
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Windows 2000 Kitaplığı için Microsoft CDO'yu görene kadar listede aşağı kaydırın . onay kutusunu işaretleyin ve tıklayın OK .
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Tamam'ı tıklattığınızda , komut dosyasının yapıştırıldığı işlevin adını not edin, çünkü daha sonra ihtiyacınız olacaktır.
2. Adım: CDO alanlarını "Kimden" ve "Alıcı" olarak ayarlayın
Bunu yapmak için, önce e-posta ile ilgili nesneler oluşturmanız ve gerekli tüm e-posta dağıtım alanlarını ayarlamanız gerekir.
Birçok alanın olabileceğini veya olmayacağını, ancak Başlangıç ve Bitiş zorunlu olduğunu unutmayın.
Nesne Olarak CDO_Mail Dim Nesne Olarak
Dim CDO_Config Nesne Olarak
Dim SMTP_Config Varyant
Dim strSubject As String
Dim strFrom As String
Dim strTo As String
Dim strCc As String
Dim strBcc As String
Dim strBody As String
strSubject = "Excel Elektronik
Tablosundan Sonuçlar" strFrom = "rdube02@gmail.com"
strTo = "rdube02@gmail.com"
strCc = ""
strBcc = ""
strBody = "Bu çeyrek için toplam sonuçlar:" & Str (Sayfa1 Hücreler (2, 1))
İlginç olan şey, tüm e-posta mesajını özelleştirmek ve strBody değişkenini atamak için istediğiniz herhangi bir dizeyi oluşturabilmenizdir.
E-posta içeriğinde koyun malzemelerle birlikte dize kullanarak ve (yukarıda gösterildiği gibi) Microsoft Excel verilerine insert email içinde herhangi bir hak Çalışma sayfalarını.
3. Adım: CDO'yu harici SMTP kullanacak şekilde yapılandırma
Sonraki kod parçası, CDO'yu e-posta göndermek için herhangi bir harici SMTP sunucusunu kullanacak şekilde yapılandırdığınız yerdir.
Bu örnek Gmail üzerinden SSL oluşturmaz, CDO SSL'nin yerini alabilir ancak bu makalenin kapsamı dışındadır. SSL kullanmanız gerekiyorsa, Github'daki gelişmiş kod size yardımcı olabilir.
Hata durumunda CDO_Mail = CreateObject ("CDO.Message") olarak ayarlandı GoTo Error_Handling
Takım CDO_Config = CreateObject ( "CDO.Configuration")
CDO_Config.Load -1
SMTP_Config = CDO_Config.Fields öğesini ayarlayın
SMTP_Config
.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp. gmail.com "
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpauthenticate ") = 1
.Item (" http://schemas.microsoft.com/cdo/configuration/sendusername ") =" email@website.com "
.Item (" http://schemas.microsoft.com/cdo/configuration/sendpassword ") =" şifre "
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpserverport ") = 25
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpusessl ") = Gerçek
.update
sonu ile
CDO_Mail
Set ile .Configuration = CDO_Config
İle Sonlandır
4. Adım: CDO kurulumunu tamamlayın
Artık SMTP sunucunuzu e-posta gönderecek şekilde yapılandırdınız. Tek yapmanız gereken CDO_Mail nesnesi için uygun alanları doldurmak ve Gönder komutunu vermektir .
Bunu nasıl yapacağınız aşağıda açıklanmıştır:
CDO_Mail.Subject = strSubject
CDO_Mail.From = strFrom
CDO_Mail.To = strTo
CDO_Mail.TextBody = strBody
CDO_Mail.CC = strCc
CDO_Mail.BCC = strBcc
CDO_Mail.Send
Error_Handling: Err.Description
<> "" Sonra MsgBox Err.Description
Outlook e-posta nesnesini kullanırken genellikle gördüğünüz gibi açılır pencerelerin veya güvenlik uyarılarının hiçbiri görünmez.
CDO, e-posta bileşenlerini yan yana koyar ve bilgi göndermeyi etkinleştirmek için sunucu bağlantı ayrıntılarını kullanır. Bu, e-postaları Microsoft Word veya Excel VBA komut dosyalarında birleştirmenin en kolay yoludur.
Komut düğmesini bu komut dosyasına bağlamak için kod düzenleyicisine erişin ve çalışma sayfasının VBA kodunu görmek için Sayfa1'i tıklatın .
Yukarıdaki komut dosyasını yapıştırdığınız işlevin adını yazın.
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Gelen kutusunda aldığınız bilgiler budur.
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Not : Aktarım sunucuya bağlanamadı hata iletisini alırsanız SMTP_Config ile listelenen kod satırına doğru kullanıcı adını, parolayı, SMTP sunucusunu ve bağlantı noktası numarasını girdiğinizden emin olun .
Tüm süreci geliştirin ve otomatikleştirin
Excel'den tek bir düğmeyle e-posta göndermek gerçekten güvenli ve kullanışlıdır. Bu özelliği sık sık kullanmak istiyorsanız, otomatikleştirebilirsiniz.
Bunu yapmak için makroyu değiştirmeniz gerekir. Visual Basic Düzenleyicisi'ne gidin, kopyalayıp toplanan kodun tamamını yapıştırın. Ardından, Proje hiyerarşisinden ThisWorkbook'u seçin .
Kod penceresinin üstündeki iki açılır alandan Çalışma Kitabı'nı seçin ve Yöntemler menüsünden Aç'ı tıklayın . Yukarıdaki e-posta komut dosyasını Private Sub Workbook_Open () içine yapıştırın . Bu eylem, Excel dosyasını her açışınızda makroyu çalıştıracaktır.
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Ardından, Görev Zamanlayıcı'yı açın . Windows'tan elektronik tabloları belirli aralıklarla otomatik olarak açmasını istemek için bu aracı kullanacaksınız. O zaman, makronuz etkinleştirilir ve e-postayla gönderilir.
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Seç ... Temel Görev Oluştur menüden Eylem ve ekran eylem ulaşana kadar yönergeleri izleyin.
Seç başlat programı ve tıklayın İleri .
![VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları VBA komut dosyalarını kullanarak Excel e-tablolarından e-posta gönderme talimatları]()
Bilgisayardaki Microsoft Excel konumunu bulmak için Gözat düğmesini kullanın veya yolu Program / komut dosyası alanına kopyalayıp yapıştırın .
Ardından, Bağımsız değişken ekle alanına Microsoft Excel belgesinin yolunu girin .
Komple talimatlar ve yapılacak program.
Önümüzdeki birkaç dakika içinde eylemi planlayıp ardından etkin çalıştığını gördükten sonra görevi gözden geçirerek bu özelliği test etmelisiniz.
Not : Makronun aşağıdaki gibi çalıştığından emin olmak için Güven Merkezi ayarlarını değiştirmeniz gerekebilir:
E-tabloyu açın ve Dosya> Seçenekler> Güven Merkezi'ne gidin .
Burada Güven Merkezi Ayarları'nı tıklayın . Bir sonraki ekranda, Engellenen içerik hakkında hiçbir zaman bilgi gösterme'yi seçin .
Microsoft Excel son derece güçlü bir araçtır, ancak nasıl kullanılacağını öğrenmek bazen birçok kişi için zor olabilir. Bu yazılımda ustalaşmak istiyorsanız, VBA'nın nasıl kullanılacağını bilmeniz gerekir. Kolay değil.
Ancak, biraz VBA deneyimiyle, Microsoft Excel'deki temel görevleri otomatikleştirebilir ve daha önemli görevlere odaklanmak için daha fazla zamanınız olabilir.
Umarım makale size yardımcı olur. Size başarılar diliyorum!