VBA Komut Dosyalarını Kullanarak Excel Tablosundan E-posta Gönderme

  • Gabriel Brooks
  • 0
  • 3373
  • 212
reklâm

Microsoft Excel'den e-posta göndermek için yalnızca birkaç basit komut dosyası gerekir. Bu işlevselliği e-tablolarınıza ekleyin; Excel'de ne kadar başarabileceğinizi gerçekten artırabilirsiniz.

VBA komut dosyalarının yapabildiği şeyleri başarabilen ancak programlama bilgisine ihtiyaç duymadan çok sayıda harika Excel makroları ele aldık. Ancak, tüm PC bilgilerinizle birlikte bir elektronik tablo raporu oluşturmak gibi yalnızca VBA ile yapabileceğiniz birçok gelişmiş şey vardır..

Bu öğreticiyi video olarak izlemeyi mi tercih ediyorsunuz? Seni koruduk!

Neden Excel'den E-posta Gönder?

Microsoft Excel'in içinden bir e-posta göndermek isteyebileceğiniz birçok neden var..

Belki de haftalık olarak belgeleri veya elektronik tabloları güncelleyen personeliniz vardır ve bu güncellemelerin ne zaman yapıldığına dair bir e-posta bildirimi almak istersiniz. Veya bir kişi e-tablonuz olabilir ve hepsine aynı anda bir e-posta göndermek istersiniz..

Muhtemelen Excel'den bir e-posta yayını komut dosyası oluşturmanın karmaşık olacağını düşünüyorsunuz. Hiç de böyle değil.

Bu makaledeki teknik, uzun süredir Excel VBA'da bulunan bir özelliği kullanacak, İşbirliği Veri Nesneleri (CDO).

CDO, işletim sisteminin çok erken nesillerinden beri Windows'ta kullanılan bir mesajlaşma bileşenidir. CDONTS olarak adlandırılan ve daha sonra Windows 2000 ve XP gelişi ile değiştirildi “Windows 2000 için CDO”. Bu bileşen, Microsoft Word veya Excel'deki VBA kurulumunuza zaten eklenmiştir ve kullanıma hazırdır.

Bileşeni kullanmak, VBA ile Windows ürünlerinin içinden e-posta göndermeyi oldukça kolaylaştırır. Bu örnekte, sonuçları belirli bir Excel hücresinden alacak bir e-posta göndermek için Excel'deki CDO bileşenini kullanacaksınız.

Adım 1: Bir VBA Makrosu Oluşturun

İlk adım Excel Developer sekmesine gitmek..

Geliştirici sekmesinde, üzerine tıklayın. Ekle Denetimler kutusunda ve ardından bir komut düğmesi seçin.

Sayfa içine çizin ve üzerine tıklayarak yeni bir makro oluşturun Makrolar Geliştirici şeridinde.

Tıkladığınızda yaratmak düğmesini VBA editörünü açacaktır..

CDO kitaplığına referansı kullanarak gezin Araçlar > Referanslar editörde.

Bulana kadar listeyi aşağı kaydır Windows 2000 Kitaplığı için Microsoft CDO. Onay kutusunu işaretleyin ve tıklayın tamam.

Tıkladığınızda tamam, Komut dosyasını yapıştırdığınız işlevin adını not edin. Daha sonra ihtiyacınız olacak.

Adım 2: CDO'yu ayarlayın “itibaren” ve “için” Alanlar

Bunu yapmak için önce posta nesnelerini oluşturmanız ve e-postayı göndermek için gerekli tüm alanları ayarlamanız gerekir..

Alanların birçoğunun isteğe bağlı olmasına rağmen, itibaren ve için alanlar zorunludur.

Dim CDO_Mail Nesne Dim CDO_Config Nesne Dim SMTP_Config Varyant Dim strSubject Dize Dim strFrom Dize Dim strTo Dize Dim StrCc Dize Dim strBcc Dize Dim strBody Dize Dim strSubject = "Excel Spreadsheet Sonuçları .com "strTo =" [email protected] "strCc =" "strBcc =" "strBody =" Bu çeyreğin toplam sonuçları şöyledir: "& Str (Sheet1.Cells (2, 1))

Bu konuda harika bir şey, tam bir e-posta iletisini özelleştirmek ve istediğiniz kişiye atamak istediğiniz herhangi bir dize oluşturabilmenizdir. strBody değişken.

Mesajın bileşenlerini kullanarak mesajı bir araya getirin. & Microsoft Excel sayfalarından herhangi birinden doğrudan e-posta iletisine veri eklemek için kullanılan dize.

Adım 3: CDO'yu Harici SMTP Kullanacak Şekilde Yapılandırma

Bir sonraki kod bölümü CDO'yu e-postayı göndermek için herhangi bir harici SMTP sunucusunu kullanacak şekilde yapılandırmanız gereken bölümdür..

Bu örnek, Gmail üzerinden SSL olmayan bir kurulumdur. CDO, SSL yeteneğine sahiptir, ancak bu, bu makalenin kapsamı dışındadır. SSL kullanmanız gerekirse, Github’daki bu gelişmiş kod yardımcı olabilir..

Set CDO_Mail = CreateObject ("CDO.Message") Hata Yaparken Hata Yapın_Handling CDO_Config = CreateObject Ayarla ("CDO.Configuration") CDO_Config.Load -1 SMTP_Config Ayarla = CDO_Config.Fields .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 protected] ".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 ") = True. CDO_Mail Setiyle Birlikte Sona Dön .Configuration = CDO_Config İle Birlikte Sona Er

4. Adım: CDO Kurulumunu Sonlandırın

Artık e-postayı göndermek için SMTP sunucusuna bağlantıyı yapılandırdığınıza göre, tek yapmanız gereken, CDO_Mail nesnesi, ve sorunu göndermek komuta.

İşte bunu nasıl yapıyorsunuz:

CDO_Mail.Subject = strSubject CDO_Mail.From = strFrom'dan CDO_Mail.To = strTo CDO_Mail.TextBody = strBody CDO_Mail.CC = strCc CDO_Mail.BCC = strBcc CDO_Mail.Send Hata_Seçesi "Eğer" Eğer "Eğer" "

Outlook posta nesnesini kullandığınızda ortaya çıkabilecek herhangi bir açılır kutu veya güvenlik uyarısı mesajı olmayacak.

CDO e-postayı bir araya getirir ve mesajı ateşlemek için SMTP sunucusu bağlantı ayrıntılarınızı kullanır. E-postayı Microsoft Word veya Excel VBA komut dosyalarına eklemenin en kolay yolu.

Komut düğmenizi bu betiğe bağlamak için, kod editörüne gidin ve tıklayın Sayfa1 bu çalışma sayfasının VBA kodunu görüntülemek için.

Yukarıdaki betiği yapıştırdığınız işlevin adını yazın.

İşte gelen kutuma gelen mesajın nasıl göründüğü:

Not: Okuyan bir hata alırsanız Aktarım sunucuya bağlanamadı, altında listelenen kod satırlarına doğru kullanıcı adını, şifreyi, SMTP sunucusunu ve port numarasını girdiğinizden emin olun. SMTP_Config ile.

Daha da İlerleyin ve Tüm Süreci Otomatikleştirin

Bir düğmeye dokunarak Excel'den e-posta gönderebilmek çok iyi ve güzel. Ancak, bu işlevi düzenli olarak kullanmak isteyebilirsiniz, bu durumda işlemi otomatikleştirmek mantıklı olacaktır. 5 E-tablolarınızı otomatikleştirmek için Excel Makroları için Kaynaklar 5 E-tablolarınızı otomatikleştirmek için Excel Makroları için Kaynaklar Excel makrolarını mı arıyorsunuz? İşte aradığınızı gösteren beş site. .

Bunu yapmak için makroda değişiklik yapmanız gerekir. Visual Basic Editor'a gidin ve bir araya getirdiğimiz kodun tamamını kopyalayıp yapıştırın.

Ardından, seçin ThisWorkbook -den proje hiyerarşi.

Kod penceresinin üstündeki iki açılır alandan, Çalışma kitabı ve seç Açık Yöntemler açılır listesinden.

Yukarıdaki e-posta komut dosyasını yapıştırın Özel Alt Çalışma Kitabı_Açık ().

Excel dosyasını her açışınızda bu makro çalışır.

Sonra aç Görev Zamanlayıcısı.

Bu aracı kullanarak Windows’tan elektronik tabloyu düzenli aralıklarla otomatik olarak açmasını isteyeceksiniz, bu noktada makronuz başlatılacak ve e-posta gönderilecektir.

seçmek Temel Görev Oluştur… -den Aksiyon Menüyü seçin ve sihirbazda size ulaşıncaya kadar ilerleyin. Aksiyon ekran.

seçmek Bir program başlat ve tıklayın Sonraki.

Kullan Araştır Bilgisayarınızda Microsoft Excel'in yerini bulmak için düğmeye basın veya yolu kopyalayıp yapıştırın. Program / script alan.

Ardından, Microsoft Excel belgenizin yolunu Argüman ekle alan.

Sihirbazı tamamlayın, zamanlamanız yerinde olur..

İşlemi planlayarak bir test çalıştırmaya değer. Bir Programdaki Geri Dönüşüm Kutusu'nu Otomatik Olarak Boşaltma ve Harcanan Alanını Boşaltma Nasıl Yapılır Bir Programdaki Geri Dönüşüm Kutusu'nu Otomatik Olarak Boşaltma ve Harcanan Alanın Boşaltılması Düzenli olarak boşalmazsanız Bin, veri sürücünüzde büyük miktarda boş alan harcıyor olabilir. Ancak şimdi Windows 10 bir zamanlamaya göre otomatik olarak boşaltabilir. Gelecekte birkaç dakika bekledikten sonra, çalışmanın doğrulandığını onayladıktan sonra görevi değiştirmek.

Not: Makronun düzgün çalıştığından emin olmak için Güven Merkezi ayarlarınızı yapmanız gerekebilir.

Bunu yapmak için elektronik tabloyu açın ve Dosya > Seçenekler > Güven merkezi.

Buradan, tıklayın Güven Merkezi Ayarları, ve sonraki ekranda radyo kadranını Engellenen içerikle ilgili hiçbir zaman bilgi gösterme.

Microsoft Excel'in Sizin İçin Çalışmasını Sağlayın

Microsoft Excel inanılmaz derecede güçlü bir araçtır, ancak bundan en iyi şekilde nasıl yararlanabileceğinizi öğrenmek biraz korkutucu olabilir. Yazılımda gerçekten ustalaşmak istiyorsanız, VBA'da rahat olmanız gerekir ve bu küçük bir iş değildir..

Ancak, sonuçlar kendileri için konuşuyor. Kemerinizin altında biraz VBA tecrübesiyle, yakında Microsoft Excel'in otomatik olarak temel işleri yapmasını sağlayarak size daha acil konulara odaklanmanız için daha fazla zaman kazandırır.

VBA ile uzmanlık oluşturmak zaman alır, ancak buna bağlı kalarak işçinizin meyvelerini yakında görürsünüz.

Başlamak için harika bir yer Excel'de VBA kullanma konusundaki yetkili eğitmenimiz Excel'de VBA Makroları Yazma Konusunda Yeni Başlayanlar İçin Bir Eğitim Öğretmeni (Ve Neden Öğrenmelisiniz) Excel'de VBA Makroları Yazma Konusunda Bir Acemi Öğreticisi (Ve Neden Öğrenmelisiniz) düzenli olarak, VBA makrolarının nasıl oluşturulacağını ve daha birçok fonksiyona ve özelliğe nasıl erişileceğini öğrenmeye değer. . Bununla işiniz bittiğinde, Excel'den e-posta göndermek için bu basit komut dosyası çocuk oyuncağı gibi hissedecek.




Henüz no comments

Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.