Имали ли сте нужда да изпращате имейл от excel VBA до множество имейл идентификатори, предоставени в Excel лист? Искате ли да научите как да изпращате имейли от Excel, без да отваряте Outlook? Тази статия обхваща как можете да автоматизирате Outlook и да изпращате множество имейли с прикачени файлове от Excel с едно щракване, като същевременно поддържате хората в копия и скрити копия.
В крайна сметка можете също да изтеглите файла, за незабавно изпращане на мъже до стотици идентификатори. Файлът съдържа макрос за изпращане на имейл от Excel.
Как да изпращате поща от Excel?
За да изпращате поща от Excel, трябва да разберете тези фрагменти на VBA.
Важно: Трябва да имате конфигуриран имейл в приложението Outlook.
Натиснете F11, за да отворите VB Editor.
- Добавете препратка към библиотеката на обекти на outlook:
-
-
- Отидете в Инструменти в менюто и кликнете върху Препратки.
-
-
- Намерете Microsoft 16.0 Object Library. Версията може да бъде различна. Това е 16.0 в Excel 2016. Поставете отметка. И щракнете върху OK.
-
- Създаване на препратки към Outlook приложение и поща: Сега, за да имаме достъп до функциите на Microsoft Outlook, трябва да създадем неговия обект.
Dim outApp As Outlook.Application 'Това ще създаде препратка към обект outlook. Dim outApp As Outlook.MailItem 'Това ще създаде препратка към MailItem.
-
- Инициализирайте препратките: Горните препратки трябва да се инициализират:
Set outApp = Нов Outlook.Application Set outMail = outApp.CreateItem (0)
-
- Изпращане на поща чрез обект outMail: По -долу редовете ще определят целевия пощенски идентификатор, cc, bcc, subject, body, прикачен файл и команда за изпращане.
С outMail .To = "abcd.mail.com" 'Задължително. Тук дефинирате пощенския идентификатор на дестинацията… cc = "cc.mail.com" 'по избор. Cc имейл имейл, ако искате … BCC = "bcc.mail.com" 'по избор. Bcc имейл поща, ако искате … Subject = subj 'трябва да има. Масажът върху тялото на пощата … Body = msg 'по избор. Масажът върху тялото на пощата … Прикачени файлове. Добавете „C: /exceltip.com \ test.xlsx“ 'по избор. Напълно квалифицирано име на прикачен файл … Изпратете „Задължително, ако искате да изпратите поща от Excel. Ако искате да видите пощата в outlook, използвайте метода .Display. Край с
Това е. Всичко, от което се нуждаете, за да изпращате поща от Excel, използвайки VBA.
Сега нека видим пример, който изпраща поща до всеки имейл имейл в колона на Excel отделно.
Сценарий:
Представете си, че сте снабдени с Excel лист, който съдържа 100 идентификационни номера на имейл и трябва да изпратите имейл до всеки имейл идентификатор поотделно. Не само това, трябва да прикачите и елементи. Това ще ви отнеме часове, ако го направите ръчно. Така че нека автоматизираме тази пощенска задача в Excel VBA.
Тук имам тези данни. В колона В, озаглавена „Изпращане на поща до“, има няколко идентификационни номера на имейли. Трябва да изпратя имейл до всеки имейл в тази колона.
За целта създадох колони за тема, масажно тяло, CC и BCC.
„Изпращане на поща до“ не трябва да има празна клетка между тях. Всички други колони могат да имат празни клетки. Ако искаш
входящи множество имейл идентификатори да се след това напишете тези имейл идентификатори със запетаи в тази колона. Уверете се, че идентификаторите на имейли са валидни.
Ако искате да изпратите прикачени файлове. Запишете адресите на тези файлове в колоната с прикачени файлове.
Напишете темата в колоната Тема.
Масаж в колоната Масажно тяло.
Ако искате да задържите някого в cc, напишете неговия/нейния имейл адрес в колоната CC. Същото и за BCC. използвайте запетая за множество имейл идентификатори.
Сега, за да изпращате имейли до всеки имейл идентификатор в колоната, следвайте тези стъпки.
- Натиснете Alt+F11, за да отворите VBA Editor в Excel.
- Добавете препратка към обект outlook, като следвате стъпките, казани по -рано.
- В нов модул копирайте кода по -долу.
'*** Трябва да имате конфигуриран имейл на Outlook в приложението outlook във вашата система ***' *** добавете препратка към библиотеката на обекти outook от препратки в инструменти *** Sub BulkMail () Application.ScreenUpdating = False ThisWorkbook.Activate ' Създаване на препратки към обекти на приложение и поща на обекти на Outlook Dim outApp As Outlook.Application Dim outMail As Outlook.MailItem 'Създаване на променлива за съхраняване на стойности на различни елементи от пощата Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow As Long „Моите данни са на лист„ Exceltip.com “, можете да имате всяко име на лист. ThisWorkbook.Sheets ("Exceltip.com"). Активирайте „Получаване на последния ред, съдържащ имейл имейл в колона 3. lstRow = Клетки (Rows.Count, 3) .End (xlUp) .Row 'Променлива за задържане на всички имейл имена Dim rng As Range Set rng = Range ("C2: C" & lstRow) 'инициализиране на outlook обект за достъп до неговите функции Set outApp = New Outlook.Application On Error GoTo cleanup' за обработка на всяка грешка при създаването на обекта. „Цикъл за повторение през всеки ред, задържане на данни в имейла в променливи и изпращане“ на поща до всеки имейл имейл. За всяка клетка In rng sendTo = Range (cell.Address) .Offset (0, 0) .Value2 subj = Range (cell.Address) .Offset (0, 1) .Value2 & "-MS" msg = Range (клетка. Адрес) .Офсет (0, 2) .Значение2 atchmnt = Обхват (клетка. Адрес) .Офсет (0, -1) .Значение2 ccTo = Обхват (клетка.Адрес) .Офсет (0, 3) .Значение2 bccTo = Обхват ( cell.Address) .Offset (0, 4) .Value2 On Error Resume Next ', за да предаде всяка грешка при създаването на обекта по -долу Set outMail = outApp.CreateItem (0)' Писане и изпращане на поща в нова поща с outMail .To = sendTo .cc = ccTo .BCC = bccTo .Body = msg .Subject = subj .Attachments.Add atchmnt .Send 'this send mail без никакво уведомление. Ако искате да видите пощата преди да изпратите, използвайте метода .Display. Грешка при включване GoTo 0 'За почистване на всяка грешка, уловена по -рано Set outMail = Нищо' анулиране на изходящ обект за следващата поща Следващата клетка 'цикълът завършва почистването:' освобождаване на всички създадени обекти Set outApp = Нищо Application.ScreenUpdating = True Application.ScreenUpdating = True End Sub
Горният код ще изпраща имейли до всеки имейл в ред от колона „изпрати поща до“. Сега, за да стартирате този код, можете директно да го изпълните от тук. Или можете да добавите фигура или бутон във вашата работна книга и след това да присвоите този макрос на този обект. Използвам форми, тъй като те могат да се персонализират. За да направите това, следвайте стъпките по -долу.
-
- Отидете на раздела Вмъкване.
- В групата Илюстрации можете да намерите фигури, щракнете върху любимата си форма.
-
- Плъзнете го и го пуснете върху листа.
- Разкрасете, ако искате.
- Щракнете с десния бутон върху него. Щракнете върху Присвояване на макрос.
-
- Изберете макрос BulkMail от списъка.
- Излезте от режим на редактиране.
Сега, когато щракнете върху този обект, вашият макрос ще се изпълнява и ще изпраща имейли. Проверете изпратените имейли, за да се уверите.
Можете да изтеглите файла на Excel Mail Sender File тук.
Разделете Excel листа на множество файлове въз основа на колона с помощта на VBA | За да разделите работен лист на няколко файла, въз основа на стойностите на колоната, ще трябва да го филтрирате, копирайте-поставете го в нов файл.
Как да филтрирате данните в Excel с помощта на VBA | Филтрирането на данни с помощта на VBA е лесно. Тези прости редове кодове филтрират данните по дадените критерии.
Изключете предупредителните съобщения с помощта на VBA в Microsoft Excel 2016 | Докато изпълнявате множество задачи, като отваряне и затваряне на файлове, Excel показва предупредителни съобщения, така че да не губите данни. Те прекъсват работещия код. За да ги избегнете
Как да преглеждате листове в Excel с помощта на VBA | За да върнем напред и назад на два или повече листа, трябва да ги прегледаме. За да преминем през няколко листа, използваме …
7 примера за For Loops в Microsoft Excel VBA | Цикълът for е най -използваната техника за циклиране на всеки език. Excel VBA не прави изключение.
Популярни статии:
50 преки пътища в Excel за повишаване на вашата производителност | Бъдете по -бързи в задачата си. Тези 50 преки пътища ще ви накарат да работите още по -бързо в Excel.
Как да използвате функцията VLOOKUP в Excel | Това е една от най -използваните и популярни функции на excel, която се използва за търсене на стойност от различни диапазони и листове.
Как да използвате функцията COUNTIF в Excel | Пребройте стойностите с условия, използвайки тази невероятна функция. Не е необходимо да филтрирате данните си, за да преброите конкретна стойност. Функцията Countif е от съществено значение за подготовката на вашето табло.
Как да използвате функцията SUMIF в Excel | Това е друга основна функция на таблото. Това ви помага да обобщите стойностите при конкретни условия.