В этой статье мы создадим макрос для отправки листа в виде вложения в электронное письмо.

Перед запуском макроса нам нужно указать идентификатор электронной почты и тему письма.

ArrowMain

В этом примере мы хотим отправить «Таблицу данных» в виде вложения в электронное письмо.

ArrowSentMail

Логическое объяснение

Мы создали макрос «MailSheet», который берет идентификатор электронной почты и тему письма из текстовых полей. Он создает новую копию «Таблицы данных», сохраняет ее и отправляет как вложение.

Объяснение кода

Таблицы («Таблица данных»). Копировать Приведенный выше код используется для создания копии таблицы данных в новой книге.

ActiveWorkbook.SaveAs «Часть» & ThisWorkbook.Name _ & «» & StrDate & «.xls»

Приведенный выше код используется для сохранения новой книги.

ActiveWorkbook.SendMail EmailID, MailSubject Приведенный выше код используется для отправки активной книги в виде вложения к указанному идентификатору электронной почты с заданной темой.

ActiveWorkbook.Close False Приведенный выше код используется для закрытия активной книги без ее сохранения.

Пожалуйста, введите код ниже

Sub MailSheet()

'Declaring variables

Dim StrDate, EmailID, MailSubject As String

'Getting value for Email ID and subject from textboxes

EmailID = Sheet1.TextBox1.Value

MailSubject = Sheet1.TextBox2.Value

'Copying "DataSheet" to new workbook

Sheets("DataSheet").Copy

'Formatting date and time to particular format

StrDate = Format(Date, "dd-mm-yy") & " " & Format(Time, "h-mm")

'Saving active workbook with new name

ActiveWorkbook.SaveAs "Part of " & ThisWorkbook.Name _

& " " & StrDate & ".xls"

'Sending mail

ActiveWorkbook.SendMail EmailID, MailSubject

'Close the active workbook

ActiveWorkbook.Close False

End Sub

Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.

Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]