复制
收藏
提问
简洁

我需要一个可以把EXCEL表中的其中一个sheet作为附件一键发送邮件的VBA代码

6e9eaff77
0秒前
全网
文档
学术
百科
知识库
时间不限
自动
回答简洁模式
深入研究一些

一键发送邮件的VBA代码

  • VBA代码实现:根据7,您可以使用以下VBA代码将Excel中的一个Sheet作为附件发送邮件。
Sub SendEmailWithSheetAsAttachment()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strSheetName As String
    Dim strFilePath As String
    
    ' 设置要发送的Sheet名称
    strSheetName = "Sheet1"
    
    ' 将Sheet保存为临时文件
    strFilePath = Environ("TEMP") & "\" & strSheetName & ".xlsx"
    ThisWorkbook.Sheets(strSheetName).Copy
    ActiveWorkbook.SaveAs Filename:=strFilePath
    ActiveWorkbook.Close
    
    ' 设置Outlook应用程序和邮件对象
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    
    ' 设置邮件的收件人、主题和正文
    With OutMail
        .To = "recipient@example.com"
        .Subject = "Attached Sheet"
        .Body = "Please find the attached sheet."
        .Attachments.Add strFilePath
        .Send
    End With
    
    ' 清理
    Kill strFilePath
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

这段代码首先将指定的Sheet保存为一个临时文件,然后创建一个Outlook邮件对象,设置邮件的收件人、主题和正文,并添加刚才保存的文件作为附件,最后发送邮件并清理临时文件。请根据实际情况修改收件人邮箱和Sheet名称。7

你觉得结果怎么样?
如何使用VBA发送Excel工作表作为邮件附件?
VBA代码实现自动发送邮件功能
Excel VBA邮件发送宏示例
如何用VBA将特定工作表作为附件发送
VBA自动发送邮件并附加Excel工作表
Excel VBA邮件发送宏的编写方法

以上内容由AI搜集生成,仅供参考

在线客服