Функція Outlook VBA Outlook

Ми працюємо над лотами та безліччю файлів Excel щодня і щодня надсилаємо багатьом користувачам. Ми пишемо одне і те ж повідомлення в електронний лист щодня і надсилаємо цей файл excel. Це дає нам сферу автоматизації цього завдання. Ви правильно це почули. Це завдання написання електронного листа та надсилання файлу можна автоматизувати за допомогою VBA. Причина полягає в тому, що VBA може використовувати посилання на різні об’єкти Microsoft, такі як зовнішній вигляд, слово, PowerPoint, фарба тощо.

Тож ми можемо надіслати електронний лист за допомогою VBA. Тепер я впевнений, що ви всі будете раді дізнатися, як ми можемо надіслати електронний лист за допомогою VBA.

У цій статті ми дізнаємось про те, як використовувати Outlook як об’єкт Microsoft від excel за допомогою кодування VBA та як ми можемо надсилати електронний лист, включаючи вкладення за допомогою VBA.

Як використовувати функцію Excel VBA Outlook?

Для використання функції VBA Outlook нам потрібно зробити дві речі.

Ви можете завантажити цей шаблон Excel Excel Excel тут - Шаблон VBA Outlook Excel
  1. Довідковий об’єкт Microsoft Outlook з бібліотеки об'єктів у VBA.
  2. Напишіть код VBA для надсилання електронних листів у модулі VBA.

№1 - Посилання на Outlook від Excel

Як відомо, Outlook є об'єктом, і нам потрібно надати посилання на об’єкт Outlook. Отже, у VBA є бібліотека посилань на об'єкти, яку нам потрібно використовувати для посилання.

Виконайте наведені нижче дії для використання бібліотеки посилань на об'єкти.

Крок 1. На вкладці Developer натисніть на Visual Basic, щоб відкрити редактор VB.

Крок 2: Перейдіть до Інструменти, а потім виберіть Посилання, як показано на скріншоті нижче.

Крок 3: Прокрутіть униз до бібліотеки довідкових об’єктів та виберіть «Бібліотека об’єктів Microsoft Outlook 16.0», щоб зробити доступною для Excel VBA.

Залежно від офісу Microsoft, версія Outlook може бути різною. У нашому випадку це 16, 0. Ви можете використовувати " Microsoft Outlook 14.0 Object Library", якщо це версія, показана на вашому комп'ютері.

Поставте прапорець Microsoft Outlook, як показано на знімку екрана. Тепер ми можемо використовувати об’єкт Microsoft Outlook у Excel VBA.

Цей процес встановлення посилання на "MICROSOFT OUTLOOK 16.0 ОБ'ЄКТНА БІБЛІОТЕКА" відомий як раннє прив'язування. Без встановлення бібліотеки об'єктів як "MICROSOFT OUTLOOK 16.0 OBIECT LIBRARY" ми не можемо використовувати властивості та методи VBA IntelliSense, що ускладнює написання коду.

№2 - Напишіть код для надсилання електронних листів від VBA Outlook від Excel

Виконайте наведені нижче дії, щоб написати код VBA для надсилання електронної пошти з Outlook з Excel.

Крок 1: Створіть процедуру Sub, назвавши макрос. Ми будемо називати макрос "send_email", як показано на скріншоті нижче.

Код:

 Варіант Явний Sub Send_email () Кінець Sub 

Крок 2: Визначте змінну як Outlook. Застосування, як показано на скріншоті нижче. Це посилання на додаток VBA Outlook.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application End Sub 

Крок 3: Нам потрібно надіслати електронний лист в Outlook, щоб визначити іншу змінну як " Outlook.Mailitem ", як показано на скріншоті нижче.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem End Sub 

Крок 4: У попередніх кроках ми визначили змінну, тепер нам потрібно їх встановити.

Тепер встановіть першу змінну “Програма Outlook” як “New Outlook.Application”, як показано на скріншоті нижче.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = New Outlook.Application End Sub 

Крок 5: Тепер встановіть другу змінну "Пошта Outlook" з кодом нижче.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = New Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) End Sub 

Крок 6: Тепер ми можемо використовувати VBA Outlook за допомогою оператора " With ", як показано на скріншоті нижче.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = New Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) з OutlookMail End Sub 

Зараз у нас є весь доступ до таких елементів електронної пошти, як "До", "CC", "BCC", "Subject", "Body of email" та багато інших елементів.

Крок 7: Всередині оператора "With" ми можемо побачити список, поставивши крапку, відому як "Список Intellisense".

Крок 8: Спочатку виберіть формат тіла як olFormatHtml, як показано на знімку екрана нижче.

Код:

 З OutlookMail .BodyFormat = olFormatHTML Закінчення Sub 

Крок 9: Виберіть ". Дисплей ", щоб відобразити пошту, як показано на скріншоті нижче.

Код:

 З OutlookMail .BodyFormat = olFormatHTML. Дисплей Кінцевий суб 

Крок 10: Виберіть " .HTMLbody ", щоб написати електронну пошту, як показано на скріншоті нижче.

Код:

 За допомогою OutlookMail .BodyFormat = olFormatHTML. Дисплей .HTMLBody = "напишіть тут свій електронний лист" End Sub 

Нам потрібно запам'ятати кілька речей під час написання електронного листа в коді VBA.

"
"Використовується для включення розриву рядків між двома рядками. Щоб додати підпис в електронному листі, вам потрібно ввести "& .HTMLbody"

Дивіться нижче приклад того, як писати пошту в VBA.

Код:

 З OutlookMail .BodyFormat = olFormatHTML. Дисплей .HTMLBody = "Шановний ABC" & "
"&" Знайдіть доданий файл "& .HTMLBody End Sub

Крок 11: Тепер нам потрібно додати одержувач електронної пошти. Для цього вам потрібно використовувати ".To".

Код:

 .To = " " 

Крок 12: Якщо ви хочете додати когось у "CC" та "BCC", ви можете використовувати ".CC" та ".BCC", як показано на скріншоті нижче.

Код:

 .CC = " " .BCC = " " 

Крок 13: Щоб додати тему електронної пошти, яку ми надсилаємо, ми можемо використовувати " .Subject ", як показано на знімку екрана нижче.

Код:

 .Subject = "TEST MAIL" 

Крок 14: Ми можемо додати нашу поточну робочу книгу як додаток до електронного листа за допомогою властивості ".Attachment". Для цього спочатку оголосьте джерело змінної як рядок.

Код:

 Темний вихідний файл як рядок 

Потім використовуйте наступний код, щоб прикріпити файл в електронному листі.

Код:

 source_file = ThisWorkbook.FullName .Attachments.Add source_file 

Тут ThisWorkbook використовується для поточної робочої книги та. FullName використовується для отримання повної назви робочого аркуша.

Крок 15: Тепер останній код - це нарешті надіслати електронний лист, для якого ми можемо використовувати " .send ". Але не забудьте закрити процедуру "З" та "Під" на "Закінчити з" та "Закінчити суб", як показано на скріншоті нижче.

Тож код нарешті готовий надіслати електронний лист. Нам потрібно просто запустити макрос.

Крок 16: Запустіть код, натиснувши кнопку F5 або Запустити і подивіться вихід.

Остаточний повний код

Отже нижче наведено остаточний код про те, як надіслати електронний лист за допомогою VBA Outlook.

Код:

 Варіант Явний Sub Send_email () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Dim source_file As String Set OutlookApp = New Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) з OutlookMail .BodyForML = olFormat ". Шановний ABC "&"
"&" Будь ласка, знайдіть доданий файл "& .HTMLBody .To =" ".CC =" ".BCC =" ".Subject =" TEST MAIL "source_file = ThisWorkbook. FullName .Attachments.Add source_file .Send End With End Sub

Приклад функції VBA Outlook

Припустимо, є керівник команди, і він хоче щодня надсилати електронне повідомлення для спостереження за діяльністю кожного члена. Електронний лист буде таким.

« Привіт,

Попросіть вас люб’язно поділитися своїми діями по кожному з ваших подальших предметів до 11:00 сьогодні.

Дякуємо та з повагою,

Невідомо

"

Виконайте вищезазначені дії для посилання на об’єкт Microsoft та написання кодування VBA, або ви можете просто змінити код відповідно.

Отже, коли весь код залишається однаковим, нам потрібно змінити декілька речей у коді, як-от ідентифікатор електронної пошти одержувача, тема, тіло електронної пошти, і в ньому не буде вкладених файлів.

Нижче наведено модифікований код, який ми використовуємо для написання цього електронного листа.

Код:

 Sub Send_teamemail () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Встановити OutlookApp = Новий Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) з OutlookMail .BodyFormat = olFormatHTML .Display.
"&"
"&" Попросіть вас люб'язно поділитися своїми діями щодо кожного з наступних пунктів до 20:00 сьогодні. "& .HTMLBody .To =" ; ; ".Subject =" Команда слідкує за цим ". Відіслати кінець із завершеним суб

Після запуску макросу ви побачите, що повідомлення відправлено автоматично зі свого світогляду.

Що потрібно пам’ятати

  • По-перше, переконайтеся, що ви встановили Microsoft Outlook на своєму комп’ютері та увійшли у свій обліковий запис.
  • Переконайтеся, що прапорець Microsoft Outlook у посиланні на бібліотеку об’єктів завжди встановлений. Код не запуститься і видасть помилку, якщо його не встановлено.
  • Визначення змінних та встановлення змінних дуже важливих у кодуванні VBA. Без змінних код не працюватиме.
  • Переконайтеся, що якщо ви хочете додати підпис у пошті, спочатку у вас повинен бути принаймні один підпис, створений у програмі Outlook.
  • Завжди використовуйте "
    ", Щоб ввести прогалини в пошті.

Рекомендовані статті

Це посібник з VBA Outlook. Тут ми обговорюємо, як надсилати електронні листи з Outlook за допомогою кодів VBA у excel разом із прикладом та шаблоном Excel, який можна завантажити. Нижче наведено кілька корисних статей Excel, пов’язаних із VBA -

  1. Що таке помилка переповнення VBA?
  2. Налаштуйте панель інструментів швидкого доступу в Excel
  3. Приклади названого діапазону VBA
  4. Як надіслати електронну пошту від Excel VBA
  5. Як використовувати опцію, явну в VBA?

Категорія: