vba - 在发送电子邮件之前隐藏 Word 表单的提交按钮
问题描述
我一直在构建一个表格,以使日常任务更快更容易。Word 表单允许我为每个人填写信息,我在底部有一个“提交”按钮:
- 将活动文档转换为 PDF
- 通过电子邮件将 PDF 作为附件发送
我遇到的问题是我似乎无法集成代码以在表单转换为 pdf 并附加之前从表单中删除提交按钮。这对我来说只是强迫症清洁的事情。任何帮助将不胜感激,因为 vba 不是我最强大的套件。
Sub CommandButton1_Click()
Dim OL As Object
Dim EmailItem As Object
'Delcared Variables for Signature from Outlook to include images
Dim strSignature As String
Dim sPath As String
Dim signImageFolderName As String
Dim completeFolderPath As String
'Code needed to convert WORD file to PDF in prep for attaching to email
strFileName = Replace(ActiveDocument.FullName, ".docm", ".pdf")
ActiveDocument.ExportAsFixedFormat OutputFileName:=strFileName, _
ExportFormat:=wdExportFormatPDF
Application.ScreenUpdating = False
'Setting up Outlook to produce the email
Set OL = CreateObject("Outlook.Application")
Set EmailItem = OL.CreateItem(0)
'The main body text of the email, configured in HTML format
strbody = "See Attached!<br><br>" & "<B>Thank You!</B><br><br>"
'Gaining folder path to Outlook Signature and Signature image folder (specific to user folder and name of Outlook Signature
sPath = Environ("appdata") & "\Microsoft\Signatures\Main.htm"
signImageFolderName = "Main_files"
completeFolderPath = Environ("appdata") & "\Microsoft\Signatures\" & signImageFolderName
If Dir(sPath) <> "" Then
strSignature = GetSignature(sPath)
strSignature = VBA.Replace(strSignature, signImageFolderName, completeFolderPath)
Else
strSignature = ""
End If
'Establishing email
With EmailItem
.To = ""
.CC = ""
.Subject = "FPE Daily Priorities"
.HTMLBody = strbody & "<br>" & strSignature
.Importance = olImportanceNormal
.Attachments.Add strFileName
'.Send
.Display
End With
Kill strFileName
Set OL = Nothing
Set EmailItem = Nothing
End Sub
解决方案
您可以将 ActiveX 按钮格式化为隐藏文本以使其消失。将按钮包裹在书签中以便于访问:
ActiveDocument.Bookmarks("SubmitButton").Range.Font.Hidden = True
作为替代方案,您可以添加一个运行提交宏的文档级 QAT 按钮。然后它根本不会出现在页面上。
推荐阅读
- c++ - 按照说明操作后无法构建 .dll
- vim - MacVim - 在打开文件的语言快捷方式之间切换
- docker - Rabbitmq 3.7.6 记录到文件不能使用 docker create 命令
- java - 在 Java 中验证 Http 请求的方法?
- java - 在 unix 上执行 jar 会导致初始化量子渲染器出错:找不到合适的管道
- php - FPDF - 带有来自 SQL 的文本的单元格内的换行符
- php - laravel 更新不传递 ID
- css - 无法让嵌套的 div 堆叠
- laravel - CLI 已停止工作,if isset 在 foreach 中,使用 laravel
- dashboard - 仪表板超链接或 iframe URL:需要筛选参数