【发布时间】:2016-06-19 00:35:12
【问题描述】:
所以,我是 VBA 的初学者,但我正在尝试创建一种简单的方法来向在 Excel 电子表格中找到信息的一群人发送提醒消息。它应该循环,向列中找到的地址发送电子邮件,直到出现一个空单元格。
我在以 * 开头的行上不断收到错误 Object does not support this property or method。我花了最后一个小时试图弄清楚为什么会出现这个错误,因为 Workbooks 有属性 Sheets 有 Cells 返回一个值。
Sub Send_Reminder_Email()
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)
Dim xlApp As Object, wb As Object
Dim row As Integer
Set xlApp = CreateObject("Excel.Application")
Set wb = xlApp.Workbooks.Open("C:\User\Me\...file.xls")
row = 2
*Do While Not IsEmpty(wb.Sheets.Cells(row, 2).Value)
objMsg.To = wb.Sheets.Cells(row, 6)
objMsg.BCC = "potapeno@foo.net"
objMsg.Subject = "Email"
objMsg.Body = "Information"
objMsg.Send
row = row + 1
Loop
Set objMsg = Nothing
Set wb = Nothing
Set xlApp = Nothing
row = 0
End Sub
我也尝试过“激活”工作簿,但未能解决我的问题。我不知道什么对象不支持什么方法。
【问题讨论】:
-
wb.Sheets是一个集合,没有.Cells属性。指定工作表 e. G。wb.Sheets("Sheet1").Cells(row, 2).Value -
请写下答案,以便我可以称这个问题为已回答。不过谢谢,我发誓我试过了,但没用,但现在可以了……
标签: excel vba outlook compiler-errors