在包含超链接的单元格中“单击”以生成mailto

时间:2019-11-14 23:38:47

标签: excel vba

我在Excel中收集了一个快速的VBA应用程序,用于办公室秘密圣诞老人活动。我的代码将在A列中获取名称列表,将其复制并在B列中将它们随机化,然后重复进行,直到没有与参与者配对的匹配项为止。此外,我在F列中具有以下超链接的单元格: (以F10单元为例)

=HYPERLINK("mailto:" & A10 & "?subject=Shhhhh… Secret Santa" & "&body=The name of your receipient is:  " &B10, "Email")

因此,现在我想要一个子例程来简单地向下滚动F列并在每个超链接上“单击”。 我尝试了一些在网上找到的东西,但没有一个完全符合我的需求。我怀疑我的语法有问题,所以我什至不会为您提供娱乐。我离开编码已经有一段时间了:) 这“应该”只是一个简单的循环,但是我需要中间的魔术线:

Sub Generate_Emails()
Dim lastsanta
lastsanta = ActiveSheet.UsedRange.Rows.Count
cur = 0
Do Until cur = lastsanta
------  Magic line that clicks Cells(cur, 6)
cur = cur + 1
Loop
End Sub

运行时,最终结果应该弹出一堆已经填充了目的地和内容的电子邮件窗口,所以我要做的就是在每个窗口中单击“发送”(仍在查看如何自动执行此操作,但是我认为前景不允许这样做,因此人们不会自动发送垃圾邮件)

请帮助。

1 个答案:

答案 0 :(得分:0)

For a = 1 To 10

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    With OutMail
        .to = Cells(a, 1).Value
        .Subject = "Secret Santa 2"
        .Body = "Secret Santa info from another cell"
        .Send
    End With
Next

Set OutMail = Nothing
Set OutApp = Nothing