首页 > 解决方案 > 通过电子邮件发送活动工作簿但更改名称

问题描述

所以目前我有一个在按下按钮时会发送到电子邮件的工作簿,但是我想在通过电子邮件发送它时更改文件的名称,我该怎么做?

Environ("UserName")我现在所拥有的是这个代码,它只发送带有当前工作簿名称的文件,但我想通过添加它来让它与发送电子邮件的人的用户名一起发送

With OutMail
   .to = "email1@example.com;email2@example.com"
   .Subject = "Your Answers " & Environ("Username")
   .Body = "Your answers are here"
   .Attachments.Add ActiveWorkbook.Name
   .Send
End With

标签: excelvba

解决方案


请尝试这种方法。您必须在附加之前更改工作簿名称...

Dim fName As String
fName = ActiveWorkbook.Path & "\" & Environ("Username")
ActiveWorkbook.SaveAs fileName:=fName, FileFormat:=xlWorkbookDefault

With OutMail
      .to = "email1@example.com;email2@example.com"
      .Subject = "Your Answers " & Environ("Username")
      .Body = "Your answers are here"
      .Attachments.Add ActiveWorkbook.Name
      .Send
End With

推荐阅读