VBA Wyślij e-mail z Excela

VBA nie ogranicza się tylko do danych w programie Excel. Możemy wysyłać e-maile za pośrednictwem VBA i tego dowiemy się w tym artykule. Wymaga znacznej wiedzy na temat VBA i jego metod pisania kodu w celu wysyłania wiadomości e-mail z programu Excel. Zanim przejdziemy do pisania i wysyłania wiadomości e-mail z programu excel, daj nam znać, co oznacza ta automatyzacja. Ten rodzaj automatyzacji oznacza dostęp do funkcji innej aplikacji za pomocą dowolnej innej aplikacji. Teraz funkcja wysyłania wiadomości jest oferowana przez Microsoft w programie Outlook, do wysyłania wiadomości e-mail będziemy używać metod i właściwości programu Outlook w programie Excel. Aby wysłać wiadomość e-mail, musimy również znać podstawowe wiadomości e-mail. W ujęciu laika, jaki jest proces i jaki jest wymóg wysłania wiadomości e-mail? E-mail składa się z adresu e-mail nadawcy, jeśli istnieje CC (Carbon Copy) lub BCC oraz wiersz tematu z treścią e-maila.

Jak wysyłać wiadomości e-mail z Excel VBA?

Nauczmy się, jak przykładowo wysyłać wiadomości e-mail za pomocą programu Outlook w programie VBA. W tym przykładzie wyślemy również załącznik do odbiornika, ten sam plik programu Excel, w którym będziemy pisać kod.

Możesz pobrać ten szablon Excel VBA Wyślij e-mail tutaj - VBA Wyślij szablon Excel E-mail

Wykonaj poniższe kroki, aby wysłać wiadomość e-mail z programu Excel za pomocą kodu VBA:

Krok 1: Na karcie Deweloper kliknij Visual Basic, aby otworzyć edytor VB.

Zanim zaczniemy pisać kody do wysyłania wiadomości e-mail, musimy wiedzieć, że program outlook jest obiektem zewnętrznym i musimy odwołać się do niego w VBA.

Krok 2: Przejdź do Narzędzia, a następnie wybierz Referencje.

Krok 3: Kliknięcie odwołania otworzy dla nas pole kreatora, znajdź odniesienie do biblioteki obiektów Microsoft Outlook i sprawdź je, a następnie kliknij OK.

Krok 4: Kliknij zakładkę Wstaw i wstaw moduł do projektu VBA.

Krok 5: Zdefiniuj podprocedurę, jak pokazano poniżej.

Kod:

 Sub EmailExample () End Sub 

Krok 6: Odwołując się do powyższej perspektywy, możemy teraz uzyskać dostęp do właściwości perspektywy w VBA. Teraz zadeklarujmy zmienną jako aplikację perspektywiczną.

Kod:

 Dim Email as Outlook.Application 

Krok 7: Podobnie jak FSO, ta zmienna jest zmienną obiektową, więc aby uzyskać dostęp do każdej innej aplikacji, musimy utworzyć pewne wystąpienia, utwórz wystąpienie, jak pokazano poniżej, używając słowa kluczowego SET.

Kod:

 Ustaw e-mail = Nowy program Outlook. Aplikacja 

Krok 8: Ponieważ chcemy wysłać załącznik do odbiornika, musimy zadeklarować jedną zmienną jako String, która będzie przechowywać ścieżkę do załącznika.

Kod:

 Dim Sr As String 

Krok 9: Teraz zacznijmy od części mailingowej w tym kodzie, aby wysłać wiadomość e-mail, musimy zdefiniować inną zmienną, która będzie korzystała z właściwości programu Outlook w odniesieniu do nowej wiadomości e-mail, jak pokazano poniżej.

Kod:

 Dim newmail As Outlook.MailItem 

Krok 10: Podobnie jak powyżej przy użyciu innej aplikacji w przykładzie musimy utworzyć instancje, teraz musimy utworzyć instancję dla nowej wiadomości e-mail, która otworzy nową wiadomość e-mail za pomocą ustawionego słowa kluczowego.

Kod:

 Ustaw newmail = Email.CreateItem (olMailItem) 

Zanim przejdziemy dalej, pozwól mi wyjaśnić nasze dotychczasowe postępy, pierwsza instancja otworzy dla nas perspektywy, a druga instancja otworzy dla nas nową wiadomość e-mail.

Krok 11: Jak wyjaśniono powyżej na temat wymogu wysłania wiadomości e-mail. Pierwszym wymaganiem jest odbiorca, który jest „Do” w wiadomości e-mail. Wykorzystajmy więc właściwość To programu Outlook w programie Excel w następujący sposób.

Kod:

 newmail.To = " " 

Krok 12: Odkąd użyliśmy właściwości Do, mamy jeszcze jedną funkcję, taką jak Carbon Copy lub CC of the Outlook.

Kod:

 newmail.CC = " " 

Podobnie możemy użyć właściwości BCC.

Uwaga: Właściwość BCC jest używana, gdy chcemy ukryć adres e-mail odbiorcy BCC przed innymi odbiornikami.

Jaki jest następny krok w wysyłaniu wiadomości e-mail?

Krok 13: Jest to temat. Kiedy piszemy nazwę instancji za pomocą operatora kropki, możemy zobaczyć opcję dla tematu w następujący sposób.

Krok 14: Naciśnij Tab na temat IntelliSense i napisz losowy temat, jak pokazano poniżej.

Kod:

 newmail.Subject = "To jest automatyczny e-mail" 

Krok 15: Kolejnym krokiem do napisania wiadomości e-mail jest jej treść. Podobnie jak właściwości, których użyliśmy powyżej w instancji, wykorzystajmy właściwość body perspektywy do napisania treści w następujący sposób.

Kod:

 newmail.HTMLBody = „Cześć” i vbNewLine i vbNewLine & „To jest testowy e-mail z programu Excel” i _ vbNewLine i vbNewLine oraz _ „Pozdrawiam” oraz vbNewLine i _ „VBA Coder” 

Krok 16: Teraz stworzyliśmy wiadomość e-mail z treścią i tematem. Następnym krokiem jest dodanie załącznika do wiadomości e-mail. Ponieważ chcemy wysłać bieżący arkusz do odbiornika, użyjemy ścieżki w następujący sposób,

Kod:

 Sr = ThisWorkbook.FullName 

Krok 17: Teraz możemy wysłać załącznik za pomocą właściwości załącznika, jak pokazano poniżej.

Kod:

 newmail.Attachments.Add Sr 

Krok 18: Teraz w końcu musimy wysłać wiadomość e-mail. Podobnie jak w programie Outlook, naciśnij przycisk wysyłania, aby wysłać wiadomość e-mail, podobnie użyjemy właściwości wysyłania programu Outlook w następujący sposób.

Kod:

 newmail.Send 

Ostateczny pełny kod

Poniżej znajduje się końcowy kod, jak wysłać wiadomość e-mail z programu Excel za pomocą VBA.

Kod:

 Sub EmailExample () Dim Email As Outlook.Application Set Email = New Outlook.Application Dim Sr As String Dim newmail As Outlook.MailItem Set newmail = Email.CreateItem (olMailItem) newmail.To = " " newmail.CC = „ ” newmail.Subject = „To jest automatyczny e-mail” newmail.HTMLBody = „Cześć” i vbNewLine i vbNewLine & „To jest testowy e-mail z programu Excel” oraz _ vbNewLine i vbNewLine i _ „Pozdrawiam” & vbNewLine & _ "VBA Coder" Sr = ThisWorkbook.FullName newmail.Attachments.Add Sr newmail.Send End Sub 

Kiedy uruchomimy powyższy kod, musimy poczekać kilka sekund na wykonanie kodu i możemy sprawdzić pole wysłanych wiadomości w perspektywie, że wiadomość e-mail została wysłana za pośrednictwem programu Excel.

Rzeczy do zapamiętania

  • Używamy innej aplikacji do wysyłania wiadomości e-mail z programu Excel.
  • Aby użyć innej aplikacji, tworzymy instancje.
  • Przed użyciem programu Outlook jako innej aplikacji musimy odwołać się do obiektów programu Outlook z zakładki odniesienia.
  • Musimy znać wymagania dotyczące wiadomości e-mail, aby wysłać wiadomość e-mail.

Polecane artykuły

To jest przewodnik po VBA Wyślij e-mail z Excela. Tutaj omawiamy, jak wysyłać wiadomości e-mail z załącznikami z programu Excel za pomocą kodu VBA wraz z przykładem i szablonem programu Excel do pobrania. Poniżej znajduje się kilka przydatnych artykułów Excela związanych z VBA -

  1. Hiperłącze VBA z przykładami
  2. Jak korzystać z funkcji ROK w Excelu?
  3. Wskazówki dotyczące korzystania z VBA Outlook
  4. Samouczki na temat funkcji Excel Data

Kategoria: