我正在使用此问题Working with current open email的答案(即代码)来逐步构建电子邮件。每次运行宏时,它都会在打开的电子邮件的现有正文文本中添加一段正文。问题是,如果我在宏“运行”之间手动对电子邮件进行一些更改,那么在下次运行时,宏将插入新的正文文本构建块,我离开了光标。但我希望宏总是在现有(和扩展)正文文本结束后添加新的正文文本。更具体地说,这意味着我(可能)在代码“oSelection.InsertAfter myText”(请参阅上面链接中的代码)之前需要一些代码,将光标(插入点)移动到打开的电子邮件的末尾我正在与之合作。
我尝试使用SendKeys命令,但使用它我只设法将光标发送到excel工作簿表的末尾,我有宏按钮。我希望光标改为打开电子邮件的结尾!
答案 0 :(得分:0)
好的,所以我终于明白了:
<div class="api-list" data-api-link="api/users/1/posts" data-api-template="post-item.html">
// List items
</div>
答案 1 :(得分:0)
宏将光标留在主题字段中。这会将光标向下移动到正文中,并将其移动到行尾:
SendKeys "{Tab}{End}", True
完整示例:
Public Sub CreateNewMessage()
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)
With objMsg
.To = "fake@example.com"
.CC = "other@example.com"
.BCC = ""
.Subject = "Test email for you"
.Categories = ""
.VotingOptions = ""
.BodyFormat = olFormatPlain ' send plain text message
.Body = "Thank you for your submission. "
.Display
SendKeys "{Tab}{End}", True
End With
Set objMsg = Nothing
End Sub
参考文献:
http://www.slipstick.com/developer/create-a-new-message-using-vba/