我在Microsoft Word文档中有一个表,我希望将其插入到Outlook电子邮件中的邮件中间。当我手动将表格复制到电子邮件草稿中时,它会保留格式,但是当我不这样做时,格式会变为列表样式。例如,这就是表格的样子:
9898 Apple颜色
1394香蕉蓝有边框,但在发送的电子邮件中,它显示为
9898
苹果
颜色
1394
香蕉
蓝
我不得不在上面添加额外的行,因为Stack Overflow没有将它显示为单独行上的每个元素。
在我的代码中,我已经取得了表格并将其连接在构成电子邮件消息的字符串中。我认为这可能是问题所在,但我不确定如何将其更改为单独包含该表。这是我的代码:
message = "Dear " & owner & ", " & vbCrLf & vbCrLf
message = message & "Here is the data we have: " & vbCrLf
message = message & vbCrLf & vbCrLf & textToTable(fileName, file)
message = message & "Can you please email us back with the updated data?"
message = message & vbCrLf & vbCrLf & "Thank you."
Set MyItem = ol.CreateItem(0)
With MyItem
.To = me
.CC = ""
.BCC = ""
.Subject = "Table"
.BodyFormat = 3
.Body = message
.Send
End With
我在textToTable函数中使用了很多代码here,它似乎按预期工作。唯一的问题是让Outlook保留表的格式;有没有人有任何建议如何这样做?非常感谢你!
答案 0 :(得分:1)
您正在设置纯文本Body属性。创建一个HTML表并将HTMLBody属性分配给属性格式化的HTML字符串。