跳到主要内容

如何应用按钮发送带有当前Word文件的电子邮件? 

如果您需要通过Outlook从Word文档发送电子邮件,并附加当前的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 = ""
        .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 for Word - 通过 Over 提升您的文字体验 100 显着特点!

🤖 Kutools 人工智能助手:用人工智能改变你的写作 - 生成内容  /  重写文本  /  总结文件  /  查询资料 基于文档,全部在Word中

📘 文档掌握: 分页  /  合并文件  /  以各种格式导出选择(PDF/TXT/DOC/HTML...)  /  批量转换为PDF  /  将页面导出为图像  /  一次打印多个文件...

内容编辑: 批量查找和替换 跨多个文件  /  调整所有图片的大小  /  转置表行和列  /  将表格转换为文字...

🧹 轻松清洁: 移开 多余的空间  /  分节符  /  所有标题  /  文本框  /  超链接  / 如需更多拆卸工具,请前往我们的 删除组...

创意插入: 插 千位分隔符  /  复选框  /  单选按钮  /  扫码支付  /  条码  /  对角线表  /  公式标题  /  图片说明  /  表标题  /  多张图片  / 发现更多 插入组...

🔍 精准选择:精确定位 特定页面  /    /  形状  /  标题段落  / 增强导航功能 更多 选择功能...

星级增强: 快速导航至任何位置  /  自动插入重复文本  /  在文档窗口之间无缝切换  /  11 转换工具...

👉 想尝试这些功能吗? Kutools for Word 提供了 60-day免费试用,没有任何限制! 🚀
 
Comments (30)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hey, in my case the button works well but not in a Word document saved with a password. Can somebody help me to fix this?
Best regards
This comment was minimized by the moderator on the site
Hi Skyyang,

I found this works when a user has MS Word but it seems emails like @hotmail; @gmail; and @live email addresses those users have issues where the button doesn't work?
It seems it also doesnt work on smart phones either if the user relies on using these as opposed to a computer.
Lastly I've had a response from another user using Windows 11 where the button doesn't work at all.

What have you experienced with the above examples please?

Thanks,

Mike
This comment was minimized by the moderator on the site
Hi,
Please see the document attached below.
I need to update it for the 2023 renewals use and when merging the button seems to become disabled as several members told me it doesnt work.

Thanks,

Mike
This comment was minimized by the moderator on the site
Hello, Mike,
I have tested your file in my computor, it wors well. I am using Office 2019. Please see the below demo:
https://www.extendoffice.com/images/stories/comments/comment-skyyang/send-doeument.gif
This comment was minimized by the moderator on the site
I have found the button works to open an email but when using mailmerge the VBA button becomes inactive for some reason?
How can I ensure when mailmerging is used the button will work for user to complete the form and then activate the button please?
This comment was minimized by the moderator on the site
Hello, Mike,
When I use mailmerge feature, the button is in active.
Could you explain your problem more detailed?
Or you can upload your file here, so that we can check where the problem is.
Thank you!
This comment was minimized by the moderator on the site
Hi Skyyang,

Please see the post I put in below which has the copy attached.
This comment was minimized by the moderator on the site
Hello folks,

I want to apply a button where I click and send the document as email, not as an attachement, to one Email-Adress. So that the document is the text of the email. Just like the effekt of the button "send to recipient" on the ribbon.

Can someone give me the right code for that?

Thank you.
This comment was minimized by the moderator on the site
Hello,
May be the code can't help to send the current word document as the email body, if to do, the picture and file formatting within the document will be lost.
If you want to send the current document as email body, the Mail Merge can do you a favor.
Do you need the Mail Merge for sending email?
If you need, please comment here.
Thank you!
This comment was minimized by the moderator on the site
Hello,

thank you for your help!

I would try it with your suggestion. Could u give me the code for mail merge?

Thanks!
This comment was minimized by the moderator on the site
Hello,
To send current word document as mail body, you can add the Send to Mail Recipient command to your QAT, please do as this:
1. Open your word file that you want to send, and then click File > Options.
2. On the left pane, select Quick Access Toolbar.
3. Select Commands Not in the Ribbon from the Choose commands from.
4. Choose and select Send to Mail Recipient and click the button Add > >.
5. Click OK to close the dialog.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-send-file-1.png

Now, this Send to Mail Recipient command will show up in the Quick Access Toolbar at the top of your Word window. Then, you can insert the relative information into the message header. After finishing the information, please click Send a copy, the message with current word document as body will be sent at once.

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

Please try this, hope it can help you!
This comment was minimized by the moderator on the site
Hello,

thank you for your help!

I would try it with your suggestion. So yes, I need the Mail Merge for sending E-Mail.
This comment was minimized by the moderator on the site
Hello Heather,

You can add Bcc to this code. For example, you can add .Bcc = "" just below .To = "". So the code becomes:

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 = ""
.Bcc = ""
.Importance = olImportanceNormal
.Attachments.Add xDoc.FullName
.Display
End With
Set xDoc = Nothing
Set xEmail = Nothing
Set xOutlookObj = Nothing
Application.ScreenUpdating = True

Please see the attached picture. Have a nice day.
Sincerely,
Mandyhttps://www.extendoffice.com/images/stories/comments/comment-zmt/Add_Bcc_to_code.png
This comment was minimized by the moderator on the site
Can you add Bcc to this code? I have tried adding Bcc and receive a compile error for expected expression.
This comment was minimized by the moderator on the site
I have create the document but my issue  now is that if I send this form to say 4 people to complete, when they open it up from the email attachment it opens in read only mode and when they click submit it asks them to save as before it will allow the code to open an email addressed to me. Is there a way around this other than giving them the location of the file?
This comment was minimized by the moderator on the site
Hi Extend office,
Can we set a different email not linked to Outlook? Like direct email to GoDaddy account?
This comment was minimized by the moderator on the site
I am trying to find out the same information. I use gmail and I need to create a form to send out to varies different email address that can automatically submit back to my gmail account.
This comment was minimized by the moderator on the site
Does this also work for Lotus Notes?
What must I change in "xOutlookObj"?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations