我正在尝试从excel表发送邮件,我的vba无法正常工作
我得到的错误是"对象没有提供此属性或方法"所有getelement声明。
我在excel表中有数据,如recieptent,subject,message。
我使用的代码是,
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的初学者,需要专家的帮助。
答案 0 :(得分:0)
GetElementByName
不存在。
您想使用GetElementsByName
,它将返回HTMLCollection而不是简单的HTMLElement。
因此,如果只有一个具有该名称的元素,请写下:ie.document.getElementsByName(":oa")(0).Value