将活动文档格式(docm)附加到Outlook中的电子邮件时,是否可以将其转换为docx

时间:2019-06-05 15:26:04

标签: vba outlook ms-word

我已经建立了一个填写活动文档的表格。显然,此文档启用了宏,因为我正在使用VBA。表单填写完成并提交后,会将活动文档附加到Outlook电子邮件中。我的IT团队不允许在我们的系统上发送启用了宏的文档,因此将不允许发送带有.docm附件的电子邮件

我已经尝试过自己转换文档,但是在这方面我对VBA不太了解。

这是我到目前为止的代码。

Private Sub OpenEmailAndAttach()
    Dim olkApp As Object
    Dim strSubject As String
    Dim strTo As String
    Dim strBody As String
    Dim strAtt As String

    strSubject = "Expenditure Approval Request"
    strBody = "Hi, " & Chr(10) & Chr(10) & "Please could I request approval RE: works" & Chr(10) & Chr(10) & "EAF is attached" & Chr(10) & Chr(10) & "Regards, " & Chr(10) & "Name"
    strTo = "email@email.com"

    strAtt = ActiveDocument.FullName

    Set olkApp = CreateObject("outlook.application")
    With olkApp.createitem(0)
        .to = strTo
        .Subject = strSubject
        .body = strBody
        .attachments.Add strAtt
        '.send
        .Display
    End With
    Set olkApp = Nothing
End Sub

它可以工作,但是我需要将其附加为.docx(未启用宏)而不是.docm文件。附加文档时是否可以进行这种类型的转换?

1 个答案:

答案 0 :(得分:1)

如果将代码添加到文档模板而不是文档本身,则文档可以始终以docx格式保存。