Excel Visual Basic-屏幕截图,然后插入电子邮件
我不熟悉使用Visual Basic。我正在MS Excel中使用Visual Basic。我正在努力解决必须将屏幕快照粘贴到电子邮件中的问题。我有以下资料,你能告诉我需要输入什么吗 谢谢Excel Visual Basic-屏幕截图,然后插入电子邮件,excel,vba,outlook,screenshot,Excel,Vba,Outlook,Screenshot,我不熟悉使用Visual Basic。我正在MS Excel中使用Visual Basic。我正在努力解决必须将屏幕快照粘贴到电子邮件中的问题。我有以下资料,你能告诉我需要输入什么吗 谢谢 Sub AddToNaughtyList() ' ' AddToNaughtyList Macro ' Range("Y3:Z3").Select Application.CutCopyMode = False Selection.Insert Shift:=
Sub AddToNaughtyList()
'
' AddToNaughtyList Macro
'
Range("Y3:Z3").Select
Application.CutCopyMode = False
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("U2:V2").Select
Selection.Copy
Range("Y3:Z3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E2").Select
Dim aOutlook As Object
Dim aEmail As Object
Dim StudentName As String
Dim SendAddress As String
' copy picture
Range("C6:S39").Select
Selection.CopyPicture Appearance:=xlScreen, Format:=xlBitmap
'setup email
Set aOutlook = CreateObject("Outlook.Application")
Set aEmail = aOutlook.CreateItem(0)
StudentName = ActiveCell.Value
SendAddress = Range("D5")
'Cells(1, "A").Value
'Set Address
aEmail.To = SendAddress
'Set Subject
aEmail.Subject = "Weekly Progress Report for " & StudentName
'Set Body for mail
aEmail.HTMLBody = "<font face=calibri><html><body>Nat's *Student needs to attend Friday Detention* text goes here.</font><br /><br />" _
'paste into email???????????
aEmail.Display
Sub AddToNaughtyList()
'
'AddToNaughtyList宏
'
范围(“Y3:Z3”)。选择
Application.CutCopyMode=False
选择。插入Shift:=xlDown,CopyOrigin:=xlFormatFromLeftOrAbove
范围(“U2:V2”)。选择
选择,复制
范围(“Y3:Z3”)。选择
Selection.Paste特殊粘贴:=xlPasteValues,操作:=xlNone,SkipBlank_
:=假,转置:=假
范围(“E2”)。选择
暗淡的A外观为对象
将电子邮件作为对象
将StudentName设置为字符串
将发送地址设置为字符串
“复制图片
范围(“C6:S39”)。选择
Selection.CopyPicture外观:=xlScreen,格式:=xlBitmap
'设置电子邮件
设置aOutlook=CreateObject(“Outlook.Application”)
设置aEmail=aOutlook.CreateItem(0)
StudentName=ActiveCell.Value
发送地址=范围(“D5”)
'单元格(1,“A”)。数值
'设置地址
aEmail.To=发送地址
“设定主题
aEmail.Subject=“每周进度报告”&StudentName
'设置邮件正文
aEmail.HTMLBody=“Nat的*学生需要参加星期五的拘留*文本在这里。
”_
'粘贴到电子邮件中???????????
电子邮件显示
我看到了两种可能的解决方案:
Attachment attachment = newMail.Attachments.Add(@"E:\Pictures\image001.jpg", OlAttachmentType.olEmbeddeditem, null, "Some image display name");
string imageCid = "image001.jpg@123";
attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E", imageCid);
newMail.HTMLBody = String.Format("<body><img src=\"cid:{0}\"></body>", imageCid);
Attachment Attachment=newMail.Attachments.Add(@“E:\Pictures\image001.jpg”,OlAttachmentType.olEmbeddeditem,null,“一些图像显示名称”);
字符串imageCid=“image001。jpg@123";
附件.PropertyAccessor.SetProperty(“http://schemas.microsoft.com/mapi/proptag/0x3712001E“,imageCid);
newMail.HTMLBody=String.Format(“,imageCid”);
我看到了两种可能的解决方案:
Attachment attachment = newMail.Attachments.Add(@"E:\Pictures\image001.jpg", OlAttachmentType.olEmbeddeditem, null, "Some image display name");
string imageCid = "image001.jpg@123";
attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E", imageCid);
newMail.HTMLBody = String.Format("<body><img src=\"cid:{0}\"></body>", imageCid);
Attachment Attachment=newMail.Attachments.Add(@“E:\Pictures\image001.jpg”,OlAttachmentType.olEmbeddeditem,null,“一些图像显示名称”);
字符串imageCid=“image001。jpg@123";
附件.PropertyAccessor.SetProperty(“http://schemas.microsoft.com/mapi/proptag/0x3712001E“,imageCid);
newMail.HTMLBody=String.Format(“,imageCid”);
我不希望将屏幕截图作为附件,但希望将其包含在电子邮件中。您可以添加隐藏的附件。它对用户不可见。但是图像将显示在身体中。请参阅。我不希望将屏幕截图作为附件包含,但希望将其包含在电子邮件中。您可以添加隐藏的附件。它对用户不可见。但是图像将显示在身体中。请参阅。我不希望将屏幕截图作为附件包含,但希望将其包含在电子邮件中。您可以添加隐藏的附件。它对用户不可见。但是图像将显示在身体中。看见