0
我得到一个* .xls文件,其中包含一个插件生成的形状,形成一个图表。 如何使用VBA将这些形状作为图像文件发送到电子邮件中的某些文本? 我知道如何获得VBA中的形状,但不知道如何将它们转换为单个图像。如何用形状发送电子邮件作为vba中的图像?
仅供参考:我无法在我的工作计算机上安装任何软件或编程环境。 MS Office只是我所拥有的。
我得到一个* .xls文件,其中包含一个插件生成的形状,形成一个图表。 如何使用VBA将这些形状作为图像文件发送到电子邮件中的某些文本? 我知道如何获得VBA中的形状,但不知道如何将它们转换为单个图像。如何用形状发送电子邮件作为vba中的图像?
仅供参考:我无法在我的工作计算机上安装任何软件或编程环境。 MS Office只是我所拥有的。
Excel VBA中有图表对象,你可以用一个图表复制到剪贴板,然后粘贴到图片到一个新的电子邮件上CopyPicture方法。当我有机会的时候,我会发布一个快速演示,但希望这会让你指向正确的方向。也请看question,因为它可能也有帮助。
编辑
发现您还可以将图表导出为图像。
试试这个,我测试过了,它确实有效。
Sub SendMail()
Dim OutApp As Object
Dim OutMail As Object
Dim myChart As ChartObject
Set myChart = Me.ChartObjects(1)
Dim myFilename As String
myFilename = "c:\temp\test.png"
On Error Resume Next
Kill myFilename
On Error GoTo 0
myChart.chart.Export myFilename, "PNG"
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
' Change the mail address and subject in the macro before you run it.
With OutMail
.To = "[email protected]"
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.Body = "Hello World!"
.Attachments.Add myFilename
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub