Note: The other languages of the website are Google-translated. Back to English

Як вставити підпис Outlook під час надсилання електронної пошти в Excel?

Припустімо, що ви хочете надіслати електронний лист безпосередньо в Excel, як ви можете додати підпис Outlook за замовчуванням у електронний лист? У цій статті наведено два методи, які допоможуть вам додати підпис Outlook під час надсилання електронної пошти в Excel.

Вставте підпис в електронну пошту Outlook під час надсилання за допомогою Excel VBA
Легко вставляйте підпис Outlook під час надсилання електронної пошти в Excel за допомогою чудового інструменту

Більше підручників з розсилки в Excel ...


Вставте підпис в електронну пошту Outlook під час надсилання за допомогою Excel VBA

Наприклад, на робочому аркуші є список електронних адрес, щоб надсилати електронні листи на всі ці адреси в Excel і додавати в електронні листи підпис Outlook за замовчуванням. Щоб досягти цього, застосуйте наведений нижче код VBA.

1. Відкрийте аркуш, що містить список адрес електронної пошти, на який потрібно надіслати електронну пошту, а потім натисніть клавішу інший + F11 ключі.

2. На відкритті Microsoft Visual Basic для додатків вікна, натисніть Insert > Модуль а потім скопіюйте нижче VBA 2 у вікно коду модуля.

3. Тепер вам потрібно замінити .Тіло рядок в VBA 2 з кодом в VBA 1. Після цього перенесіть лінію Відображення під лінією За допомогою xMailOut.

VBA 1: шаблон надсилання електронних листів із підписом Outlook за замовчуванням у Excel

.HTMLBody = "This is a test email sending in Excel" & "<br>" & .HTMLBody

VBA 2: Надішліть електронну пошту на електронні адреси, вказані в комірках Excel

Sub SendEmailToAddressInCells()
    Dim xRg As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select email address range", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
    For Each xRgEach In xRg
        xRgVal = xRgEach.Value
        If xRgVal Like "?*@?*.?*" Then
            Set xMailOut = xOutApp.CreateItem(olMailItem)
            With xMailOut
                .To = xRgVal
                .Subject = "Test"
                .Body = "Dear " _
                      & vbNewLine & vbNewLine & _
                        "This is a test email " & _
                        "sending in Excel"
                .Display
                '.Send
            End With
        End If
    Next
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

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

4 Натисніть кнопку F5 клавіша для запуску коду. Тоді a Kutools для Excel виберіть спливаюче вікно, будь ласка, виберіть електронні адреси, на які ви будете надсилати електронні листи, а потім натисніть ОК.

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

Порада:

  • 1. Ви можете змінити тіло електронної пошти в коді VBA 1 відповідно до своїх потреб.
  • 2. Після запуску коду, якщо з'явиться діалогове вікно з помилкою із попередженням, що визначений користувачем тип не визначений, закрийте це діалогове вікно та натисніть кнопку інструменти > посилання в Microsoft Visual Basic для додатків вікно. На відкритті Посилання - VBAProject вікно, перевірте Бібліотека об’єктів Microsoft Outlook і натисніть ОК. А потім запустіть код ще раз.

Легко вставляйте підпис Outlook під час надсилання електронної пошти в Excel за допомогою чудового інструменту

Якщо ви новачок у VBA, тут настійно рекомендуємо Надіслати електронні листи корисність Kutools для Excel для вас. За допомогою цієї функції ви можете легко надсилати електронні листи на основі певних полів у Excel та додавати до них підпис Outlook. Будь ласка, виконайте наступне.

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

По-перше, вам потрібно створити список розсилки з різними полями, на основі яких ви будете надсилати електронні листи.

Ви можете вручну створити список розсилки, як вам потрібно, або застосувати функцію Створення списку розсилки, щоб швидко зробити це.

1. клацання Kutools Plus > Створити список розсилки.

2 В Створити список розсилки У діалоговому вікні вкажіть потрібні поля, виберіть, куди виводити список, а потім клацніть на OK кнопки.

3. Тепер створено зразок списку розсилки. Оскільки це зразок списку, вам потрібно змінити поля на певний необхідний вміст. (допускається кілька рядків)

4. Після цього виділіть весь список (включайте заголовки), натисніть Kutools Plus > Надіслати електронні листи.

5 В Надіслати електронні листи діалогове вікно:

  • 5.1) Елементи у вибраному списку розсилки автоматично розміщуються у відповідних полях;
  • 5.2) Завершіть текст електронної пошти;
  • 5.3) Перевірте обидва Надіслати електронну пошту через Outlook і Використовуйте налаштування підпису Outlook коробки;
  • 5.4) Клацніть на Відправити кнопку. Дивіться знімок екрана:

Тепер електронні листи надсилаються. І підпис Outlook за замовчуванням додається в кінці тіла електронної пошти.

  Якщо ви хочете отримати безкоштовну пробну версію (30 днів) цієї утиліти, натисніть, щоб завантажити, а потім перейдіть до застосування операції, як описано вище.


Статті по темі:

Надішліть електронну пошту на електронні адреси, вказані в клітинках Excel
Припустимо, у вас є список адрес електронної пошти, і ви хочете надіслати повідомлення електронної пошти на ці адреси електронною поштою безпосередньо в Excel. Як цього досягти? Ця стаття покаже вам способи надсилання електронної пошти на декілька адрес електронної пошти, вказаних у клітинках Excel.

Надішліть електронний лист із копіюванням та вставкою певного діапазону в тіло електронної пошти в Excel
У багатьох випадках зазначений діапазон вмісту на аркуші Excel може бути корисним у спілкуванні електронною поштою. У цій статті ми представимо метод надсилання електронного листа із вказаним діапазоном вставки в тіло електронної пошти безпосередньо в Excel.

Надішліть електронний лист із кількома вкладеннями, прикріпленими в Excel
У цій статті йдеться про надсилання електронного листа через Outlook із кількома вкладеннями, приєднаними до Excel.

Надішліть електронний лист, якщо в Excel досягнуто терміну виконання
Наприклад, якщо термін виконання в стовпці C менше або дорівнює 7 дням (поточна дата - 2017/9/13), надішліть нагадування електронною поштою вказаному одержувачу в стовпці A із зазначеним вмістом у стовпці B. Як це зробити досягти цього? У цій статті буде запропоновано метод VBA для детального розгляду цього питання.

Автоматично надсилати повідомлення електронної пошти на основі значення комірки в Excel
Припустимо, ви хочете надіслати електронне повідомлення через Outlook певному одержувачу на основі вказаного значення комірки в Excel. Наприклад, коли значення комірки D7 на аркуші перевищує 200, електронна пошта створюється автоматично. Ця стаття представляє метод VBA для швидкого вирішення цієї проблеми.

Більше підручників з розсилки в Excel ...


Найкращі інструменти для підвищення продуктивності офісу

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2019 та 365. Підтримує всі мови. Простота розгортання на вашому підприємстві чи в організації. Повна функція 30-денної безкоштовної пробної версії. 60-денна гарантія повернення грошей.
вкладка kte 201905

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (27)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
дуже дякую, ти врятував мені життя за допомогою цього шаблону :D
Цей коментар був мінімізований модератором на сайті
Шановний Фавіо,
Радий допомогти.
Цей коментар був мінімізований модератором на сайті
не працює з вкладеними файлами в Office 2016
Цей коментар був мінімізований модератором на сайті
Шановний Крісе,
Наведений нижче код VBA може допомогти вам. Після запуску коду виберіть клітинки, що містять адреси електронної пошти, на які ви надсилатимете електронні листи, а потім виберіть файли, які потрібно прикріпити до листа як вкладення, коли з’явиться друге діалогове вікно. І підпис Outlook за замовчуванням також буде відображатися в тілі електронної пошти. Дякуємо за коментар.

Sub SendEmailToAddressInCells()
Dim xRg As Range
Dim xRgEach як діапазон
Dim xRgVal як рядок
Dim xAddress як рядок
Зменшіть xOutApp як Outlook.Application
Змінити xMailOut як Outlook.MailItem
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Встановіть xRg = Application.InputBox("Виберіть діапазон адрес електронної пошти", "KuTools For Excel", xAddress, , , , , 8)
Якщо xRg — нічого, вийдіть із Sub
Application.ScreenUpdating = Невірний
Встановіть xOutApp = CreateObject("Outlook.Application")
Встановити xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
Встановіть xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
Якщо xFileDlg.Show = -1 Тоді
Для кожного xRgEach In xRg
xRgVal = xRgEach.Value
Якщо xRgVal подобається "?*@?*.?*" Тоді
Встановити xMailOut = xOutApp.CreateItem(olMailItem)
За допомогою xMailOut
Відображення
.To = xRgVal
.Subject = "Тест"
.HTMLBody = "Це тестовий електронний лист, який надсилається в Excel" & "
" & .HTMLBody
Для кожного xFileDlgItem в xFileDlg.SelectedItems
.Вкладення.Додати xFileDlgItem
Наступний xFileDlgItem
'.Надіслати
Кінець з
End If
Далі
Встановіть xMailOut = Нічого
Встановіть xOutApp = Нічого
Application.ScreenUpdating = True
End If
End Sub
Цей коментар був мінімізований модератором на сайті
Я намагаюся додати підпис Outlook під назвою "за замовчуванням", але не здається, що він працює.
ви можете допомогти? Я вважаю, що моя логіка "xMailout" неправильна. це моя підозрювана несправна область.

Приватна підкоманда CommandButton1_Click()

Зменшіть xOutApp як об’єкт
Змінити xOutMail як об’єкт
Заглушити xMailBody як рядок
Змінити xMailOut як Outlook.MailItem
On Error Resume Next
Встановіть xOutApp = CreateObject("Outlook.Application")
Встановити xOutMail = xOutApp.CreateItem(0)
xMailBody = "Привітання:" & vbNewLine & vbNewLine & _
"Це рядок 1" & vbNewLine & _
"Це рядок 2" & vbNewLine & _
"Це рядок 3" & vbNewLine & _
«Це рядок 4»
On Error Resume Next
За допомогою xOutMail
.To = "Email.here.com"
.CC = "Email.here.com"
.Subject = "Назва електронної пошти тут - " & діапазон("Cell#").value
.Body = xMailBody
. Вкладення. Додати ActiveWorkbook.FullName
Встановити xMailOut = xOutApp.CreateItem(olMailItem)
За допомогою xMailOut
Відображення
Кінець з
ActiveWorkbook.Save
При помилці GoTo 0
Встановіть xOutMail = Нічого
Встановіть xOutApp = Нічого
End Sub
Цей коментар був мінімізований модератором на сайті
Добрий день,
Ваш сценарій був змінений, будь ласка, спробуйте. Дякую.

Приватна підкоманда CommandButton1_Click()
Зменшіть xOutApp як об’єкт
Змінити xOutMail як об’єкт
Заглушити xMailBody як рядок
Змінити xMailOut як Outlook.MailItem
On Error Resume Next
Встановіть xOutApp = CreateObject("Outlook.Application")
Встановити xOutMail = xOutApp.CreateItem(0)
xMailBody = "Привітання:" & vbNewLine & vbNewLine & _
"Це рядок 1" & vbNewLine & _
"Це рядок 2" & vbNewLine & _
"Це рядок 3" & vbNewLine & _
«Це рядок 4»
On Error Resume Next
За допомогою xOutMail
.To = "Email.here.com"
.CC = "Email.here.com"
.Subject = "Назва електронної пошти тут - " & діапазон("Cell#").Значення
.Body = xMailBody
.Додатки.Додати ActiveWorkbook.FullName
Встановити xMailOut = xOutApp.CreateItem(olMailItem)
За допомогою xMailOut
Відображення
Кінець з
Кінець з
ActiveWorkbook.Save
При помилці GoTo 0
Встановіть xOutMail = Нічого
Встановіть xOutApp = Нічого
End Sub
Цей коментар був мінімізований модератором на сайті
як додати підпис, якщо макрос використовується кількома користувачами.
наприклад, мій макрос також запускатимуть 3 інші особи. Отже, як макрос може використовувати підпис користувача, який запускає макрос.
заранее спасибо
Цей коментар був мінімізований модератором на сайті
Хороший день,
Код VBA може автоматично розпізнавати підпис за замовчуванням в Outlook відправника та надсилати електронну пошту з його власним підписом через Outlook.
Цей коментар був мінімізований модератором на сайті
Якщо мій основний текст пов’язаний для витягування з полів Excel, використання & .HTMLBody в кінці рядка стирає весь основний текст і залишає підпис.
Цей коментар був мінімізований модератором на сайті
У мене виникають проблеми із запуском цього в Excel 2016. Я отримую повідомлення «Помилка компіляції: тип, визначений користувачем, не визначено». Будь ласка, допоможіть!
Цей коментар був мінімізований модератором на сайті
Чудово!!!!
Цей коментар був мінімізований модератором на сайті
Дуже дякую...
Цей коментар був мінімізований модератором на сайті
Привіт, мені потрібна допомога з моїм макросом, мені потрібно вставити підпис Outlook під таблицею, чи не могли б ви допомогти мені з цим?

Приватна підкоманда CommandButton1_Click()


Смутний погляд як об’єкт
Зменшити нову електронну пошту як об’єкт
Dim xInspect As Object
Редактор сторінки як об’єкт

Встановити outlook = CreateObject("Outlook.Application")
Встановити newEmail = outlook.CreateItem(0)

З новою електронною поштою
.To = Sheet5.Range("F1")
.CC = ""
.BCC = ""
.Subject = Sheet5.Range("B5")
.Body = Sheet5.Range("B41")
.дисплей

Встановіть xInspect = newEmail.GetInspector
Встановити pageEditor = xInspect.WordEditor

Лист5.Діапазон("B6:I7").Копія

pageEditor.Application.Selection.Start = Len(.Body)
pageEditor.Application.Selection.End = pageEditor.Application.Selection.Start
pageEditor.Application.Selection.PasteAndFormat (wdFormatPlainText)

.дисплей
Встановити Редактор сторінки = Нічого
Встановіть xInspect = Нічого
Кінець з

Встановити newEmail = Нічого
Встановити перспективи = Нічого

End Sub
Цей коментар був мінімізований модератором на сайті
Привіт Бара,
Вибачте, не можу вам з цим допомогти. Дякую за коментар.
Цей коментар був мінімізований модератором на сайті
Шановний,
Чи може хтось допомогти мені з моїм VBA,
Мені потрібен підпис у створеному електронному листі:
Цей коментар був мінімізований модератором на сайті
Завдяки вам я можу додати підпис зараз, але потім він видаляє пробіли між абзацами тексту. Будь ласка, ви можете мені допомогти?


Sub helloworld()
Зменшіть OutApp як об’єкт
Зменшіть OutMail як об’єкт
Яскрава комірка як діапазон
Смутний шлях як рядок
Шлях = Application.ActiveWorkbook.Path
Встановити OutApp = CreateObject("Outlook.Application")

Для кожної клітинки в діапазоні ("C4:C6")
Встановити OutMail = OutApp.CreateItem(0)
З OutMail
Відображення
.To = клітинка.Значення
.Тема = Клітинки(комірка.Рядок, "D").Значення
.HTMLBody = "Шановний " & клітинки(cell.Row, "B").Значення & "," _
& vbNewLine & vbNewLine & _
"Теплі вітання" _
& vbNewLine & vbNewLine & _
«Ми, JK Overseas, хотіли б скористатися нагодою і представити нашу компанію JK Overseas, яка займається виробництвом солі протягом останніх 3 років. Наразі ми сильні на внутрішньому ринку та розширюємося за кордоном. Ми є постачальником харчової солі, Сіль для пом'якшення води, сіль проти обмерзання, промислова сіль" & "." _
& vbNewLine & vbNewLine & _
«Ми співпрацюємо з великими виробниками в Індії та закуповуємо у них якісну сіль та експортуємо. Тому ми шукаємо надійного експерта-імпортера, а також агента-дистриб'ютора, щоб вести довгостроковий бізнес із взаємною вигодою» & « ». _
& vbNewLine & vbNewLine & _
"Будь ласка, зв'яжіться з нами з вашими вимогами або для будь-яких інших запитів, які у вас можуть виникнути. Ми забезпечуємо надійну логістику та своєчасну доставку. Ми впевнені, що наші найконкурентоспроможніші ціни відповідатимуть вашим очікуванням" & "." _
& vbNewLine & vbNewLine & _
.HTMLТіло

'.Надіслати
Кінець з
Наступна клітинка
End Sub
Цей коментар був мінімізований модератором на сайті
Я намагаюся інтегрувати цей код у поточний формат, який я зараз маю, завдяки чому я можу автоматизувати електронні листи в Excel на основі встановленого діапазону значень. Буду дуже вдячний за будь-яку допомогу щодо того, куди додати код «підпису» до того, що я маю наразі.

Загальнодоступна субперевірка та надсилання пошти()

'Оновлено Extendoffice 2018 / 11 / 22

Dim xRgDate як діапазон

Dim xRgSend As Range

Dim xRgText як діапазон

Dim xRgDone As Range

Зменшіть xOutApp як об’єкт

Змінити xMailItem як об’єкт

Dim xLastRow As Long

Dim vbCrLf як рядок

Заглушити xMailBody як рядок

Dim xRgDateVal як рядок

Dim xRgSendVal як рядок

Змінити xMailSubject як рядок

Dim I As Long

On Error Resume Next

"Будь ласка, вкажіть діапазон термінів виконання

xStrRang = "D2:D110"

Встановити xRgDate = діапазон (xStrRang)

"Укажіть діапазон адрес електронної пошти одержувачів

xStrRang = "C2:C110"

Встановити xRgSend = Range(xStrRang)

xStrRang = "A2:A110"

Встановити xRgName = Range(xStrRang)

«Укажіть діапазон із нагадуваним вмістом у своїй електронній пошті

xStrRang = "Z2:Z110"

Встановити xRgText = діапазон (xStrRang)

xLastRow = xRgDate.Rows.Count

Встановити xRgDate = xRgDate(1)

Встановити xRgSend = xRgSend(1)

Встановити xRgName = xRgName(1)

Встановити xRgText = xRgText(1)

Встановіть xOutApp = CreateObject("Outlook.Application")

Для I = 1 до xLastRow

xRgDateVal = ""

xRgDateVal = xRgDate.Offset(I - 1).Значення

Якщо xRgDateVal <> "" Тоді

Якщо CDate(xRgDateVal) - Дата <= 30 і CDate(xRgDateVal) - Дата > 0, то

xRgSendVal = xRgSend.Offset(I - 1).Значення

xMailSubject = " Термін дії угоди про надання послуг JBC закінчується " & xRgDateVal

vbCrLf = "

"

xMailBody = ""

xMailBody = xMailBody & "Дорогий " & xRgName.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & " " & xRgText.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & ""

Встановити xMailItem = xOutApp.CreateItem(0)

За допомогою xMailItem

.Тема = xMailSubject

.To = xRgSendVal

.CC = "mailcc@justbettercare.com"

.HTMLBody = xMailBody

Відображення

'.Надіслати

Кінець з

Встановіть xMailItem = Нічого

End If

End If

Далі

Встановіть xOutApp = Нічого

End Sub
Цей коментар був мінімізований модератором на сайті
Це дійсно корисний код
Мені потрібно змінити формат тексту справа наліво в рядку xOutMsg
Допоможіть, будь ласка .
Цей коментар був мінімізований модератором на сайті
Я намагаюся надіслати окремі аркуші з Excel на різні електронні листи, але це буде вкладати лише саму книгу. Крім того, потрібно мати можливість додати рядок свого підпису. Будь-яка допомога? Підписати AST_Email_From_Excel()

Приглушити електронну програму як об’єкт
Згасити emailItem як об’єкт

Встановити emailApplication = CreateObject("Outlook.Application")
Встановити emailItem = emailApplication.CreateItem(0)

Тепер ми створюємо електронну пошту.

emailItem.to = Діапазон ("e2").Значення

emailItem.CC = Діапазон ("g2").Значення

emailItem.Subject = "Неповернене технічне обладнання"

emailItem.Body = "Перегляньте вкладену електронну таблицю для неповернених елементів у вашому регіоні"

«Прикріпити поточний зошит
emailItem.Attachments.Add ActiveWorkbook.FullName

«Прикріпіть будь-який файл зі свого комп’ютера.
'emailItem.Attachments.Add ("C:\...)"

'Надішліть електронного листа
'emailItem.send

«Відобразіть електронний лист, щоб користувач міг змінити його за бажанням перед відправленням
emailItem.Display

Встановити emailItem = Нічого
Встановити emailApplication = Нічого

End Sub
Цей коментар був мінімізований модератором на сайті
Привіт, Кріс, наданий вами код було змінено. Тепер підпис Outlook можна вставити в тіло повідомлення. Будь ласка, спробуйте. Дякую. Sub AST_Email_From_Excel()
'Оновлено Extendoffice 20220211
Приглушити електронну програму як об’єкт
Згасити emailItem як об’єкт
Встановити emailApplication = CreateObject("Outlook.Application")
Встановити emailItem = emailApplication.CreateItem(0)

Тепер ми створюємо електронну пошту.
emailItem.Display 'Відобразити електронний лист, щоб користувач міг змінити його за бажанням перед відправленням
emailItem.to = Діапазон ("e2").Значення
emailItem.CC = Діапазон ("g2").Значення
emailItem.Subject = "Неповернене технічне обладнання"
emailItem.HTMLBody = "Перегляньте вкладену електронну таблицю для неповернених елементів у вашому регіоні" & " " & emailItem.HTMLBody

«Прикріпити поточний зошит
emailItem.Attachments.Add ActiveWorkbook.FullName

Встановити emailItem = Нічого
Встановити emailApplication = Нічого

End Sub
Цей коментар був мінімізований модератором на сайті
Привіт Crystal! Дякуємо за те, що він додав підпис, але, здається, не подобається розділ HTMLBody. Коли я запускаю макрос, він налагоджується на emailItem.HTMLBody = "Див. додану електронну таблицю для неповернених елементів у вашому регіоні" & " " & emailItem.HTMLBodyand не завершує решту.  
Цей коментар був мінімізований модератором на сайті
привіт,
Яку версію Excel ви використовуєте? Наступний код VBA також може допомогти. Будь ласка, спробуйте. Дякуємо за ваш відгук. Sub SendWorkSheet()
'Оновлення до Extendoffice 20220218
Dim xFile як рядок
Dim xFormat As Long
Dim Wb як робочий зошит
Dim Wb2 як робочий зошит
Помутніти шлях до файлу як рядок
Зменшити ім'я файлу як рядок
Приглушити OutlookApp як об’єкт
Потьмарити OutlookMail як об’єкт
On Error Resume Next
Application.ScreenUpdating = Невірний
Установіть Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Установіть Wb2 = Application.ActiveWorkbook
Виберіть Case Wb.FileFormat
Випадок xlOpenXMLWorkbook:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Випадок xlOpenXMLWorkbookMacroEnabled:
Якщо Wb2.HasVBProject Тоді
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Ще
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
End If
Випадок Excel8:
xFile = ".xls"
xFormat = Excel8
Випадок xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Зараз, "dd-mmm-yy h-mm-ss")
Встановити OutlookApp = CreateObject("Outlook.Application")
Встановити OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
'xstr = Діапазон ("e2") & " ; " & Діапазон ("g2")
За допомогою OutlookMail
Відображення
.To = Діапазон ("e2")
.CC = Діапазон ("g2")
.BCC = ""
.Subject = "Неповернене обладнання для технічної підготовки"
.HTMLBody = "Перегляньте вкладену електронну таблицю, щоб побачити неповернені товари у вашому регіоні" & " " & .HTMLBody
.Додатки.Додати Wb2.FullName
'.Надіслати
Кінець з
Wb2.Закрити
Вбийте FilePath & FileName & xFile
Встановіть OutlookMail = Нічого
Встановіть OutlookApp = Нічого
Application.ScreenUpdating = True
End Sub
Цей коментар був мінімізований модератором на сайті
Схоже, Excel 2016 і VBA 7.1
Цей коментар був мінімізований модератором на сайті
Oi Cristal, мінімальний макрос для налаштування електронної пошти, зображення та форматування оригіналу. Como consigo резольвер?

Sub Geraremail()

Dim OLapp як Outlook.Application
Dim janela Як Outlook.MailItem

Встановіть OLapp = Новий Outlook.Application
Встановити janela = OLapp.CreateItem(olMailItem)

Arquivo01 = "Mapa AN"
Anexo01 = This Workbook.Path & "\" & Arquivo01 & ".xlsm"


З Джанелою
ActiveWorkbook.Save
Відображення
.To = Листи("Основа").Діапазон("A2").Значення
.CC = Листи("Основа").Діапазон("A5").Значення
.Subject = "Mapa - Acrilo " & Формат (Дата, "дд.мм.рр")
assinatura = .Тіло
.Body = "Prezados/as", & Chr(10) & Chr(10) & "Перегляньте додаткову інформацію про карту Acrilonitrila, що розглядається як vendas previstas no S&OP." & Chr(10) & Chr(10) & assinatura
.Додатки.Додати Anexo01
Кінець з

End Sub
Цей коментар був мінімізований модератором на сайті
Com a mudança abaixo, consegui ajustar. Перегляньте текст повідомлення на Times New Roman. Gostaria de usar Calibri, como posso alterar o codigo?

Sub Geraremail()

Dim OLapp як Outlook.Application
Dim janela Як Outlook.MailItem

Встановіть OLapp = Новий Outlook.Application
Встановити janela = OLapp.CreateItem(olMailItem)

Arquivo01 = "Mapa AN"
Anexo01 = This Workbook.Path & "\" & Arquivo01 & ".xlsm"


З Джанелою
ActiveWorkbook.Save
Відображення
.To = Листи("Основа").Діапазон("A2").Значення
.CC = Листи("Основа").Діапазон("A5").Значення
.Subject = "Mapa - Acrilo " & Формат (Дата, "дд.мм.рр")
assinatura = .Тіло
.HTMLBody = "Prezados/as", & Chr(10) & Chr(10) & "Перегляньте додаткову інформацію про карту Acrilonitrila, що розглядається як продавці, які перебувають без S&OP." & " " & .HTMLBody
.Додатки.Додати Anexo01
Кінець з

End Sub
Цей коментар був мінімізований модератором на сайті
Привіт Міла,
Наступний код VBA може допомогти вам змінити шрифт тіла електронної пошти на Calibri, будь ласка, спробуйте. Дякую.
Перед запуском коду потрібно клацнути інструменти > Посилання в Microsoft Visual Basic для додатків вікно, а потім перевірте Бібліотека об’єктів Microsoft Word у полі Посилання - VBAProject діалогове вікно, як на знімку екрана, показаному нижче.
[img]Я:\工作\周雪明\2022年工作\6月份\文章评论截图\3.png[/img]
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
Цей коментар був мінімізований модератором на сайті
Привіт Міла,
Наступний код VBA може допомогти вам змінити шрифт тіла електронної пошти на Calibri, будь ласка, спробуйте. Дякую.
Перед запуском коду потрібно клацнути інструменти > Посилання в Microsoft Visual Basic для додатків вікно, а потім перевірте Бібліотека об’єктів Microsoft Word у полі Посилання - VBAProject діалогове вікно як вкладений файл, показаний нижче.
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця