Good Afternoon All,
我公司每年大约两次,我必须为某些经理生成用户报告。我生成这些报告并将它们发送给适当的用户没有问题,但这总是需要操作员对我的团队采取行动。我想看看是否有更简单的方法来做到这一点。我的想法是使用一个按钮生成并通过电子邮件发送这些批量报告。我可以通过VBA或宏来做到这一点吗?或者我不应该走那条路,因为有一种更简单的方法吗?
感谢各位帮忙。
答案 0 :(得分:1)
我不确定您的报告是否会以Excel,word或任何其他文件显示,但主要的想法是编写一个运行查询的vba代码,并以您想要的方式收集数据并对其进行格式化。这将是您挑战,找出详细信息,您将无法在一个帖子中得到所有问题的答案。
对于您要发送电子邮件的部分,以下是我可以为您提供帮助的代码:
Sub Email_Recepients(sEMailSubj As String, sPath As String, sBody As String)
Dim olApp As Object
Dim olMail As Object
If bolHandleErrors Then On Error GoTo Handler
Set olApp = CreateObject("Outlook.Application")
' olApp.Visible=True
Set olMail = olApp.CreateItem(0)
With olMail
.To = Mat_EmailAddress
.Subject = sEMailSubj
' .Attachments.Add sPath
' .DeleteAfterSubmit = True
' .HTMLBody = sBody
' .Send
End With
Set olMail = Nothing
Set olApp = Nothing
Application.Wait Now + TimeValue("00:00:04")
Exit Sub
Handler:
Application.EnableEvents = True
Application.ScreenUpdating = True
MsgBox "Oops! Something went worng. I could not get Outlook to send your message. Please try again later.",vbInformation, "Email HHI Governance Function"
End Sub
某些行已被注释掉,但您可以取消注释它们并在需要时使用它们。确保定义他们在代码开头使用的变量。