Excel VBA中从Excel工作表
问题描述:
我试图从Excel工作表发送邮件发送邮件,我的VBA不工作Excel VBA中从Excel工作表
错误我得到的“对象不suppoer此属性或方法”为所有getelement声明。
我有excel表中的数据,如recieptent,主题,消息。
代码,我现在用的就是,
Sub Macro2()
Do Until IsEmpty(ActiveCell)
URL = Selection.Value 'https://mail.google.com/mail/u/0/?ui=2&view=cm&fs=1&tf=1
Set ie = CreateObject("InternetExplorer.Application")
With ie
.Visible = 1
.navigate URL
While .Busy Or .readyState <> 4
DoEvents
Wend
End With
Dim Doc As HTMLDocument
Set Doc = ie.document
ie.document.getElementByName(":oa").Value = ActiveCell.Offset(0, 1).Value 'reciever_mail_id
ie.document.getElementById(":op").Value = ActiveCell.Offset(0, 2).Value 'subject
ie.document.getElementById(":nq").Value = ActiveCell.Offset(0, 3).Value 'message
ie.document.getElementById(":p0").Click 'submit button
ActiveCell.Offset(0, 4).Value = "mail sent"
ActiveCell.Offset(1, 0).Select
ie.Quit
Loop
End Sub
*我的Gmail ID已登录,因此无需登录。 **我是初学者在VBA,需要从专家的帮助。
答
GetElementByName
不存在。
你想使用GetElementsByName
这将返回一个HTMLCollection,而不是一个简单的HTMLElement。
所以如果有这个名字只有一个元素写:ie.document.getElementsByName(":oa")(0).Value
您是否获得在上面的代码中的错误?或者你需要其他帮助? –
我得到的错误是“对象不支持此属性或方法”的所有getelement语句。 –
你可以使用MS Outlook吗?通过一个网站的界面发送它似乎有点笨重,Outlook确实提供了很好的发送电子邮件的功能 –