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

Як застосувати кнопку для надсилання електронного листа із вкладеним поточним файлом Word? 

Якщо вам потрібно надіслати повідомлення електронної пошти з документа Word через Outlook, а також приєднати поточний файл Word, ви можете створити командну кнопку, а потім надіслати повідомлення, натиснувши цю кнопку, не відкриваючи Outlook. У цій статті я розповім, як швидко і легко з цим боротися.

Застосуйте кнопку, щоб надіслати електронний лист із доданим поточним файлом Word


Застосуйте кнопку, щоб надіслати електронний лист із доданим поточним файлом Word

Будь ласка, виконайте такі дії для вирішення цієї роботи у файлі Word:

1. По-перше, вам слід створити командну кнопку, натисніть, будь ласка Розробник > Спадкові інструменти > Кнопка керування (керування ActiveX), див. скріншот:

кнопка doc для надсилання електронного листа 1

2. Виберіть кнопку та натисніть властивості під Розробник вкладка, в властивості Введіть потрібний текст підпису в Підпис поле, див. скріншот:

кнопка doc для надсилання електронного листа 2

3. Потім закрийте властивості на панелі, клацніть правою кнопкою миші та виберіть Переглянути код, див. скріншот:

кнопка doc для надсилання електронного листа 3

4. А потім, у відображеному Microsoft Visual Basic для додатків вікно, скопіюйте та вставте наведений нижче код між оригінальними сценаріями, див. знімок екрана:

Dim xOutlookObj As Object
    Dim xEmail As Object
    Dim xDoc As Document
    Application.ScreenUpdating = False
    Set xOutlookObj = CreateObject("Outlook.Application")
    Set xEmail = xOutlookObj.CreateItem(olMailItem)
    Set xDoc = ActiveDocument
    xDoc.Save
    With xEmail
        .Subject = "Fax-data"
        .Body = "This is a test email."
        .To = "yy@addin99.com"
        .Importance = olImportanceNormal
        .Attachments.Add xDoc.FullName
        .Display
    End With
    Set xDoc = Nothing
    Set xEmail = Nothing
    Set xOutlookObj = Nothing
    Application.ScreenUpdating = True

кнопка doc для надсилання електронного листа 4

примітки: У наведеному вище коді вам слід змінити тему, основний текст або надіслану адресу відповідно до ваших потреб.

5. Потім збережіть і закрийте цей код, натисніть Режим дизайну щоб вимкнути режим проектування. Тепер, натиснувши створену вами командну кнопку, буде створено електронний лист із поточним документом Word як вкладення, див. Знімок екрана:

кнопка doc для надсилання електронного листа 5

6. Нарешті, вам просто потрібно натиснути Відправити , щоб надіслати це повідомлення.


Рекомендовані засоби підвищення продуктивності слів

 

Kutools для Word - Більше 100 вдосконалених функцій для Word, економите свій 50% часу

  • Складні та повторювані операції можна виконати одноразово за кілька секунд.
  • Вставте кілька зображень між папками в документ Word одночасно.
  • Об’єднайте та об’єднайте декілька файлів Word у папках в одне із потрібним замовленням.
  • Поділіть поточний документ на окремі документи відповідно до заголовка, розділу розділу чи інших критеріїв.
  • Перетворюйте файли між Doc та Docx, Docx та PDF, колекцією інструментів для загальних перетворень та виділення тощо ...
Коментарі (29)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
Я намагаюся надіслати електронний лист із темою одного з моїх полів. Це можливо?
Цей коментар був мінімізований модератором на сайті
Добрий день, я підріян апояр пара que el archivo se convierta en PDF y se adjunte al correo en ves del word por favor.
Велике спасибі.
Цей коментар був мінімізований модератором на сайті
Привіт команді Extend Office!

Я вважаю, що "xEmile" написана з помилкою. Це має бути "xEmail".

Поки код виконується і немає проблем, наступний оператор нічого не дасть:

Встановіть xEmail = Нічого
Цей коментар був мінімізований модератором на сайті
Привіт, Абхі,
Дякую за ваш коментар, як ви сказали, «xEmile» написана з помилкою, це має бути «xEmail». Я оновив код.
Ще раз спасибі!
Цей коментар був мінімізований модератором на сайті
Чи можна це зробити, щоб надіслати лише одну сторінку документа?
Цей коментар був мінімізований модератором на сайті
Привіт, Дон,
Щоб впоратися зі своїм завданням, застосуйте наведений нижче код, у коді потрібно змінити початкову та кінцеву сторінку на свою:

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

Dim xCurPageStart As Long, xCurPageEnd As Long, xCurPageRange як діапазон

Dim xCurPage як ціле число, xPages як ціле число

Затуманювати xOutlookObj як об’єкт

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

Dim xDoc як документ, xNewDoc як документ

Dim xFilePath як рядок

Dim xOldStart As Long, xOldEnd As Long

On Error Resume Next

Application.ScreenUpdating = Невірний

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

Встановити xEmail = xOutlookObj.CreateItem(olMailItem)

xFilePath = CreateObject("WScript.Shell").SpecialFolders(16)

Встановіть xDoc = ActiveDocument

xOldStart = xDoc.Application.Selection.Start

xOldEnd = xDoc.Application.Selection.End

xDoc.Save

xFilePath = xFilePath + "\прикріплений файл" + VBA.Mid(xDoc.FullName, VBA.InStrRev(xDoc.FullName, ".")) 'прикріплений файл - це ім'я вкладеного файлу, змініть його відповідно до ваших потреб

xCurPageStart = 2 'початкова сторінка

xCurPageEnd = 2 'кінцева сторінка

xPages = Selection.Information(wdNumberOfPagesInDocument)

xCurPageStart = Selection.GoTo(what:=wdGoToPage, which:=wdGoToNext, Name:=xCurPageStart).Start

Якщо xCurPage = xPages Тоді

xCurPageEnd = ActiveDocument.Content.End

Ще

xCurPageEnd = Selection.GoTo(what:=wdGoToPage, which:=wdGoToNext, Name:=xCurPageEnd + 1).Start

End If

Встановити xCurPageRange = ActiveDocument.Range(xCurPageStart, xCurPageEnd)

xCurPageRange.Select

xCurPageRange.Copy

Встановіть xNewDoc = Application.Documents.Add(Visible:=False)

xNewDoc.Активувати

xNewDoc.Content.PasteAndFormat wdFormatOriginalFormatting

xNewDoc.SaveAs2 Ім'я файлу:=xFilePath

xNewDoc.Close

xDoc.Range(xOldStart, xOldEnd).Вибрати

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

.Subject = "Дані факсу"

.Body = "Це тестовий електронний лист."

.To = "yy@addin99.com"

.Важливість = olImportanceNormal

.Вкладення.Додати xFilePath

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

Кінець з

VBA. Kill xFilePath

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

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

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

Application.ScreenUpdating = True

End Sub
Цей коментар був мінімізований модератором на сайті
Я створив форму для заповнення в MS Word. Я використовував застарілі інструменти для обчислень тощо. Я також додав кнопку відправки, яка працює для надсилання форми на електронну пошту. Проблема в тому, що коли я знову відкриваю цей документ після збереження, він не працює. Я навіть спробував зберегти його як документ з підтримкою макросів, але безрезультатно. Чи можете ви допомогти?
Дякую
Цей коментар був мінімізований модератором на сайті
У мене спочатку він працював, а потім чомусь зараз видає помилку 429 про те, що компонент ActiveX не може створити об’єкт. я буквально просто скопіював і вставив. Це працювало раніше, але я просто змінив розмір шрифту, зробив кнопку більшою та змінив підпис. я не думаю, що я випадково змінив якісь інші налаштування? уявляєте, що це може бути?
Цей коментар був мінімізований модератором на сайті
Привіт! Я хотів би змусити командну кнопку надсилати електронний лист із документом Word як тілом електронного листа (мій документ Word — це форма). Чи є спосіб це зробити?
Цей коментар був мінімізований модератором на сайті
Я хотів би, щоб мій документ надіслав як документ PDF, а не документ word.
Цей коментар був мінімізований модератором на сайті
Наприклад, використовувати текст з текстового поля/текстового поля в документі Word і вставляти його як текст у темі вашого електронного листа?
Цей коментар був мінімізований модератором на сайті
Так, це також те, що я хочу, чи може хтось допомогти з цим запитом?
Цей коментар був мінімізований модератором на сайті
Це також працює для Lotus Notes?
Що потрібно змінити в "xOutlookObj"?
Цей коментар був мінімізований модератором на сайті
Привіт Extend office!
Чи можна встановити іншу електронну пошту, не пов’язану з Outlook? Подобається пряма електронна пошта в обліковий запис GoDaddy?
Цей коментар був мінімізований модератором на сайті
Я намагаюся дізнатися ту саму інформацію. Я використовую gmail, і мені потрібно створити форму для надсилання на різні адреси електронної пошти, які можуть автоматично повертатися до мого облікового запису Gmail.
Цей коментар був мінімізований модератором на сайті
Я створив документ, але зараз моя проблема полягає в тому, що якщо я надішлю цю форму, щоб сказати, що потрібно заповнити 4 особи, коли вони відкриють її з вкладеного листа електронної пошти, він відкриється в режимі лише для читання, а коли вони натиснуть кнопку "Надіслати", буде запропоновано зберегти, як раніше. це дозволить коду відкрити адресу електронної пошти. Чи є спосіб обійти це, крім надання їм розташування файлу?
Цей коментар був мінімізований модератором на сайті
Чи можете ви додати приховану копію до цього коду? Я спробував додати Bcc і отримав помилку компіляції для очікуваного виразу.
Цей коментар був мінімізований модератором на сайті
Привіт Хізер,

До цього коду можна додати приховану копію. Наприклад, ви можете додати .Bcc = "zmt@addin99.com" трохи нижче .To = "yy@addin99.com". Отже, код стає таким:

Затуманювати xOutlookObj як об’єкт
Змінити xEmail як об’єкт
Dim xDoc як документ
Application.ScreenUpdating = Невірний
Встановіть xOutlookObj = CreateObject("Outlook.Application")
Встановити xEmail = xOutlookObj.CreateItem(olMailItem)
Встановіть xDoc = ActiveDocument
xDoc.Save
За допомогою xEmail
.Subject = "Дані факсу"
.Body = "Це тестовий електронний лист."
.To = "yy@addin99.com"
.Bcc = "zmt@addin99.com"
.Важливість = olImportanceNormal
.Attachments.Add xDoc.FullName
Відображення
Кінець з
Встановіть xDoc = Нічого
Встановіть xEmail = Нічого
Встановіть xOutlookObj = Нічого
Application.ScreenUpdating = True

Перегляньте, будь ласка, додане зображення. Гарного дня.
З повагою,
Мендіhttps://www.extendoffice.com/images/stories/comments/comment-zmt/Add_Bcc_to_code.png
Цей коментар був мінімізований модератором на сайті
Привіт народ,

Я хочу застосувати кнопку, на якій я натискаю, і надсилаю документ електронною поштою, а не як вкладення, на одну електронну адресу. Щоб документ був текстом електронного листа. Так само, як і ефект кнопки «відправити одержувачу» на стрічці.

Хтось може дати мені правильний код для цього?

Дякую.
Цей коментар був мінімізований модератором на сайті
Здравствуйте,
Можливо, код не може допомогти надіслати поточний документ Word як тіло електронної пошти, якщо це зробити, зображення та форматування файлу в документі буде втрачено.
Якщо ви хочете надіслати поточний документ як тіло електронної пошти, злиття може зробити вам послугу.
Вам потрібне злиття для надсилання електронної пошти?
Якщо вам потрібно, прокоментуйте тут.
Дякую!
Цей коментар був мінімізований модератором на сайті
Здравствуйте,

Дякую за твою допомогу!

Я б спробував це з вашої пропозиції. Так, мені потрібне злиття для надсилання електронної пошти.
Цей коментар був мінімізований модератором на сайті
Здравствуйте,

Дякую за твою допомогу!

Я б спробував це з вашої пропозиції. Чи можете ви дати мені код для злиття листів?

Спасибо!
Цей коментар був мінімізований модератором на сайті
Здравствуйте,
Щоб надіслати поточний документ Word як тіло пошти, ви можете додати Надіслати одержувачу пошти наказ своєму QAT, будь ласка, зробіть так:
1. Відкрийте файл Word, який потрібно надіслати, а потім натисніть філе > опції.
2. На лівій панелі виберіть Панель швидкого доступу.
3. вибрати Команди не на стрічці від Виберіть команди з.
4. Вибирай і вибирай Надіслати одержувачу пошти і натисніть кнопку Додати>>.
5. клацання OK щоб закрити діалогове вікно.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-send-file-1.png

Тепер це Надіслати одержувачу пошти команда з'явиться в Панель швидкого доступу у верхній частині вікна Word. Потім ви можете вставити відповідну інформацію в заголовок повідомлення. Після завершення інформації натисніть Надішліть копію, повідомлення з поточним документом Word буде надіслано одразу.

https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-send-file-3.png

Будь ласка, спробуйте це, сподіваюся, це допоможе вам!
Цей коментар був мінімізований модератором на сайті
Я виявив, що кнопка працює для відкриття електронної пошти, але під час використання злиття пошти кнопка VBA з якоїсь причини стає неактивною?
Як я можу переконатися, що під час використання об’єднання пошти кнопка працюватиме, щоб користувач заповнив форму, а потім активував кнопку?
Цей коментар був мінімізований модератором на сайті
Привіт, Майк,
Коли я використовую функцію злиття, кнопка активна.
Не могли б ви пояснити свою проблему більш детально?
Або ви можете завантажити свій файл тут, щоб ми могли перевірити, де проблема.
Дякую!
Цей коментар був мінімізований модератором на сайті
Привіт, Скайян,

Будь ласка, перегляньте публікацію, яку я розмістив нижче, до якої прикріплено копію.
Цей коментар був мінімізований модератором на сайті
привіт,
Будь ласка, перегляньте документ, який додається нижче.
Мені потрібно оновити його для використання поновлень у 2023 році, і під час об’єднання кнопка, здається, вимикається, оскільки кілька учасників сказали мені, що вона не працює.

Спасибі,

Майк
Цей коментар був мінімізований модератором на сайті
Привіт, Майк,
Я перевірив ваш файл на своєму комп’ютері, він непоганий. Я використовую Office 2019. Перегляньте наведену нижче демонстрацію:
https://www.extendoffice.com/images/stories/comments/comment-skyyang/send-doeument.gif
Цей коментар був мінімізований модератором на сайті
Привіт, Скайян,

Я виявив, що це працює, коли користувач має MS Word, але здається, що електронні листи схожі на @hotmail; @gmail; і @live адреси електронної пошти тих користувачів, які мають проблеми, коли кнопка не працює?
Здається, він також не працює на смартфонах, якщо користувач покладається на їх використання, а не на комп’ютер.
Нарешті я отримав відповідь від іншого користувача Windows 11, де кнопка взагалі не працює.

Будь ласка, що ви отримали від наведених вище прикладів?

Спасибі,

Майк
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL