Excel VBA funcție Outlook

Lucrăm zilnic la o mulțime de fișiere Excel și pe care le trimitem la mai mulți utilizatori zilnic. Scriem zilnic același mesaj în e-mail și trimitem acel fișier excel. Aceasta ne oferă sfera automatizării acestei sarcini. Ai auzit corect. Această sarcină de a scrie un e-mail și de a trimite fișierul poate fi automatizată cu ajutorul VBA. Motivul este că VBA poate folosi o referință cu diferite obiecte Microsoft, cum ar fi Outlook, Word, PowerPoint, paint etc.

Astfel, putem trimite e-mailul cu ajutorul VBA. Acum sunt sigur că toți vor fi încântați să știm cum putem trimite un e-mail cu ajutorul VBA.

Vom afla în acest articol despre cum să utilizăm Outlook ca obiect Microsoft de la excel folosind codarea VBA și cum putem trimite un e-mail inclusiv un atașament cu ajutorul VBA.

Cum se utilizează funcția Excel VBA Outlook?

Pentru a utiliza funcția VBA Outlook, trebuie să facem două lucruri.

Puteți descărca acest șablon VBA Outlook Excel aici - șablonul Outlook VBA
  1. Referință Microsoft Outlook Object din Biblioteca de obiecte în VBA.
  2. Scrieți codul VBA pentru a trimite e-mailuri în modulul VBA.

# 1 - Referință de Outlook din Excel

După cum știți Outlook este un obiect și trebuie să oferim o referință la obiectul Outlook. Așadar, există o bibliotecă de referință obiect în VBA pe care trebuie să o utilizăm pentru referință.

Urmați pașii de mai jos pentru a utiliza Biblioteca de referință a obiectelor.

Pasul 1: în fila Dezvoltator faceți clic pe Visual Basic pentru a deschide VB Editor.

Pasul 2: Accesați Instrumente și apoi selectați Referințe, așa cum se arată în imaginea de mai jos.

Pasul 3: Derulați în biblioteca de obiecte de referință și selectați „Biblioteca de obiecte Microsoft Outlook 16.0” pentru a o face disponibilă pentru Excel VBA.

În funcție de Microsoft Office, versiunea Outlook poate fi diferită. În cazul nostru, este 16.0. Puteți utiliza „ Microsoft Object 14.0 Object Library” dacă aceasta este versiunea afișată pe computer.

Bifează caseta Microsoft Outlook așa cum se arată în imaginea de mai sus. Acum putem folosi obiectul Microsoft Outlook în Excel VBA.

Acest proces de stabilire a referinței la „MICROSOFT OUTLOOK 16.0 OBIECTIV BIBLIOTRIC” este cunoscut sub numele de Early Binding. Fără a seta biblioteca de obiecte ca „MICROSOFT OUTLOOK 16.0 OBIECTIV BIBLIOTECĂ” nu putem folosi proprietățile și metodele IntelliSense ale VBA, ceea ce face dificilă scrierea codului.

# 2 - Scrieți un cod pentru a trimite emailuri din Outlook VBA din Excel

Urmați pașii de mai jos pentru a scrie codul VBA pentru a trimite un e-mail din perspectiva din Excel.

Pasul 1: Creați o procedură secundară prin denumirea macro-ului. Vom numi macro ca „send_email”, așa cum se arată în imaginea de mai jos.

Cod:

 Opțiune Subplică Explicare Send_email () End Sub 

Pasul 2: Definiți variabila ca Outlook. Aplicație așa cum se arată în imaginea de mai jos. Aceasta este referința la aplicația Outlook VBA.

Cod:

 Opțiune Subplică Explicare Send_email () Dim Diminează OutlookApp Ca subpunct. Outlook.Application End 

Pasul 3: Trebuie să trimitem un e-mail în Outlook, astfel încât să definim o altă variabilă ca „ Outlook.Mailitem ”, așa cum se arată în imaginea de mai jos.

Cod:

 Opțiune Subplică explicativă Send_email () Dim OutlookApp ca Outlook.Application Dim OutlookMail ca Outlook.MailItem Sub Sub 

Pasul 4: În etapele anterioare am definit variabila acum trebuie să le setăm.

Acum setați prima variabilă „Aplicație Outlook” ca „Outlook.Applicare nouă”, așa cum se arată în imaginea de mai jos.

Cod:

 Opțiune Subplică explicativă Send_email () Dim OutlookApp ca Outlook.Application Dim OutlookMail ca Outlook.MailItem Set OutlookApp = Outlook sub final Outlook.Application nou 

Pasul 5: Setați acum a doua variantă „Outlook Mail” cu codul de mai jos.

Cod:

 Opțiunea Subplică Explicare Send_email () Dim OutlookApp Ca Outlook.Application Dim OutlookMail Ca Outlook.MailItem Set OutlookApp = Setare Outlook.Application Nou OutlookMail = OutlookApp.CreateItem (olMailItem) Final Sub 

Pasul 6: Acum putem folosi Outlook VBA folosind instrucțiunea „ Cu ” așa cum se arată în imaginea de mai jos.

Cod:

 Opțiunea Subplică Explicare Send_email () Dim OutlookApp Ca Outlook.Application Dim OutlookMail Ca Outlook.MailItem Set OutlookApp = Setare Outlook.Application Nou OutlookMail = OutlookApp.CreateItem (olMailItem) Cu OutlookMail End Sub 

Acum avem tot accesul la articole de e-mail precum „To”, „CC”, „BCC”, „subiect”, „Corpul e-mailului” și multe alte articole.

Pasul 7: În cadrul instrucțiunii „Cu”, putem vedea o listă punând un punct care este cunoscut sub numele de „Lista de interacidențe”.

Pasul 8: Mai întâi selectați formatul corpului ca olFormatHtml așa cum se arată în imaginea de mai jos.

Cod:

 Cu OutlookMail .BodyFormat = olFormatHTML End Sub 

Pasul 9: Selectați „ .Display ” pentru a afișa e-mailul așa cum se arată în imaginea de mai jos.

Cod:

 Cu OutlookMail .BodyFormat = olFormatHTML .Display End Sub 

Pasul 10: Selectați „ .HTMLbody ” pentru a scrie e-mailul așa cum se arată în imaginea de mai jos.

Cod:

 Cu OutlookMail .BodyFormat = olFormatHTML .Display .HTMLBody = "scrieți e-mailul aici" End Sub 

Trebuie să ne amintim câteva lucruri în timp ce scriem email-ul în cod VBA.


”Este folosit pentru a include întreruperea liniei între două linii. Pentru a adăuga semnătura în e-mail, trebuie să introduceți „& .HTMLbody”

Vezi mai jos un exemplu despre cum poți scrie e-mailul în VBA.

Cod:

 Cu OutlookMail .BodyFormat = olFormatHTML .Display .HTMLBody = "Dragă ABC" & "
"&" Vă rugăm să găsiți fișierul atașat "& .HTMLBody End Sub

Pasul 11: Acum trebuie să adăugăm receptorul e-mailului. Pentru aceasta, trebuie să folosiți „.To”.

Cod:

 .To = " " 

Pasul 12: Dacă doriți să adăugați pe cineva în „CC” și „BCC”, puteți utiliza „.CC” și „.BCC” așa cum se arată în imaginea de mai jos.

Cod:

 .CC = " " .BCC = " " 

Pasul 13: Pentru a adăuga un subiect pentru e-mailul pe care îl trimitem, putem folosi „ .Subject ”, așa cum se arată în imaginea de mai jos.

Cod:

 .Subject = "TEST MAIL" 

Pasul 14: Putem adăuga cartea noastră de lucru curentă ca atașament la e-mail cu ajutorul proprietății „.Anexă”. Pentru a face asta, mai întâi declarați o sursă variabilă ca șir.

Cod:

 Dim source_file ca șir 

Apoi utilizați următorul cod pentru a atașa fișierul în e-mail.

Cod:

 source_file = ThisWorkbook.FullName .Attachments.Add source_file 

Aici, acest manual este folosit pentru cartea de lucru curentă și. FullName este folosit pentru a obține numele complet al foii de lucru.

Pasul 15: Acum, ultimul cod este să trimiteți în final un e-mail pentru care putem folosi „ .send ”. Însă asigurați-vă că închideți procedura With și Sub prin „End with” și „End Sub”, așa cum se arată în imaginea de mai jos.

Deci, codul este gata în sfârșit pentru a trimite un e-mail. Trebuie să rulăm macrocomanda acum.

Pasul 16: Rulați codul apăsând butonul F5 sau Run și vedeți ieșirea.

Cod complet final

Iată mai jos codul final despre cum poți trimite un e-mail cu ajutorul VBA Outlook.

Cod:

 Opțiune Subplică Explicare Send_email () Dim OutlookApp Ca Outlook.Application Dim OutlookMail As Outlook.MailItem Dim source_file As String Set OutlookApp = Outlook.Application New Set OutlookMail = OutlookApp.CreateItem (olMailItem) Cu OutlookMail .BodyFormat = olFormatHTML .Dis. Stimate ABC "&"
"&" Vă rugăm să găsiți fișierul atașat "& .HTMLBody .To =" ".CC =" ".BCC =" ".Subject =" TEST MAIL "source_file = ThisWorkbook. Numele complet .Anexări.Adăugare sursă_file. Trimiteți sfârșitul cu finalul subs

Exemplu de funcție Outlook VBA

Să presupunem că există un Lider de echipă și dorește să trimită un e-mail zilnic pentru urmărirea activității fiecărui membru. E-mailul va fi astfel.

Bună echipă,

Solicitați-vă să vă împărtășiți cu drag acțiunile dvs. pe fiecare din articolele de monitorizare până la ora 11:00.

Multumiri și respecte,

Necunoscut

Urmați pașii menționați mai sus pentru referire la Microsoft Object și scrierea codării VBA sau puteți doar să modificați codul în consecință.

Deci, cu tot ce codul rămâne același, trebuie să schimbăm câteva lucruri din cod, precum ID-ul de e-mail al destinatarului, subiectul, corpul e-mailului și nu va fi atașat în e-mail.

Mai jos este codul modificat pe care îl utilizăm pentru a scrie acest e-mail.

Cod:

 Sub Send_teamemail () Dim OutlookApp Ca Outlook.Application Dim OutlookMail Ca Outlook.MailItem Set OutlookApp = Setare Outlook.Application Nou OutlookMail = OutlookApp.CreateItem (olMailItem) Cu OutlookMail .BodyFormat = olFormatHTML .Display .HTMLBody = "HiHML"
„&”
"&" Solicitați să vă împărtășiți cu amabilitate acțiunile dvs. pe fiecare dintre articolele dvs. de urmărire până la 8 PM astăzi. "& .HTMLBody .To =" ; ; ".Subject =" Urmărirea echipei ". Trimitere cu finalizare sub

După rularea macrocomenziului, veți vedea că e-mailul a fost trimis automat din perspectiva dvs.

Lucruri de amintit

  • În primul rând, asigurați-vă că ați instalat Microsoft Outlook în computer și că v-ați autentificat în contul dvs.
  • Asigurați-vă că este bifată întotdeauna căsuța pentru referința Microsoft Outlook din Biblioteca de obiecte. Codul nu va rula și va arunca o eroare dacă nu este bifat.
  • Definirea variabilelor și setarea variabilelor foarte importante în codificarea VBA. Fără variabile, un cod nu va funcționa.
  • Asigurați-vă că, dacă doriți să adăugați semnătură la poștă, mai întâi ar trebui să aveți cel puțin o semnătură deja creată în perspectivă.
  • Utilizați întotdeauna „
    ”Pentru a introduce lacune în linie.

Articole recomandate

Acesta este un ghid pentru VBA Outlook. Aici vom discuta despre cum să trimiteți e-mailuri din Outlook folosind coduri VBA în excel împreună cu un exemplu și un șablon excel descărcabil. Mai jos sunt câteva articole utile utile legate de VBA -

  1. Ce este VBA OverFlow Error?
  2. Personalizați Bara de instrumente de acces rapid în Excel
  3. Exemple de interval VBA numit
  4. Cum să trimiteți e-mail de la Excel VBA
  5. Cum se utilizează opțiunea Explicit în VBA?

Categorie: