Excel 运行时错误438消息确定最后一行
我明白了 运行时错误438对象不支持此属性或方法 在“最后一行”上 我正在尝试根据Excel工作表中的数据设置多个Outlook任务(更新证书的提醒)。每行包括为每个证书设置每个任务所需的数据 我需要用数据确定最后一行 整个代码Excel 运行时错误438消息确定最后一行,excel,vba,runtime-error,Excel,Vba,Runtime Error,我明白了 运行时错误438对象不支持此属性或方法 在“最后一行”上 我正在尝试根据Excel工作表中的数据设置多个Outlook任务(更新证书的提醒)。每行包括为每个证书设置每个任务所需的数据 我需要用数据确定最后一行 整个代码 Dim olApp作为Outlook.Application 将任务设置为TaskItem Dim wsMEDCMain As工作表 将最后一行变暗为长,将行数变暗为长 Set olApp=newoutlook.Application 设置wsMain=ThisWork
Dim olApp作为Outlook.Application
将任务设置为TaskItem
Dim wsMEDCMain As工作表
将最后一行变暗为长,将行数变暗为长
Set olApp=newoutlook.Application
设置wsMain=ThisWorkbook.Worksheets(“Main”)
使用wsMain
LastRow=单元格(Rows.Count,“C”)。EndofUp.Row'LastRow然后退出子行
对于RowNumber=2到LastRow
如果Len(单元格(行数,“C”).值)>0,则
'创建任务项
设置olTask=olApp.CreateItem(olTaskItem)
带奥尔塔克
.Subject=单元格(行号,“C”)。值
.Status=olTaskNotStarted
.重要性=低重要性高
.StartDate=单元格(行号,“B”)。值
.DueDate=单元格(行号,“A”)。值
.提醒集=真
.ReminderTime=.StartDate&(“09:00:00”)
.Body=Cells(RowNumber,“D”).Value&vbNewLine&(“证书详细信息:”)&Cells(RowNumber,(“C”).Value
拯救
以
'清除对象变量
设置olTask=Nothing
如果结束
下一行号
以
端接头
您需要将EndofUp
替换为End(xlUp)
一个可以为您修复它的组件 您需要将EndofUp
替换为End(xlUp)
an,这样您就可以修复它了 您应该对代码进行一些修改,@Darren Bartrup-Cook已经列出了一些修改
LastRow = Cells(Rows.Count, "C").EndofUp.Row
If Len(Cells(RowNumber, "C").Value) > 0 Then
与:
LastRow = .Cells(.Rows.Count, "C").End(xlUp).Row
Len
,也不能使用wsMain
工作表对象完全限定LastRow = Cells(Rows.Count, "C").EndofUp.Row
If Len(Cells(RowNumber, "C").Value) > 0 Then
与:
With
语句中使用With
语句With olTask ' <-- Setting a With inside another With statement
您应该对代码进行一些修改,@Darren Bartrup Cook已经列出了一些修改
LastRow = Cells(Rows.Count, "C").EndofUp.Row
If Len(Cells(RowNumber, "C").Value) > 0 Then
与:
LastRow = .Cells(.Rows.Count, "C").End(xlUp).Row
Len
,也不能使用wsMain
工作表对象完全限定LastRow = Cells(Rows.Count, "C").EndofUp.Row
If Len(Cells(RowNumber, "C").Value) > 0 Then
与:
With
语句中使用With
语句With olTask ' <-- Setting a With inside another With statement
它应该是
LastRow=.Cells(.Rows.Count,“C”).End(xlUp).Row
。您正在使用wsMain,但实际上从未“链接”任何范围到它。@DarrenBartrup-Cook的答案中包括将Cells()
链接到wsMain
。但是,稍后在循环中,您会遇到另一个不合格的单元格()
,如果您希望wsMain
上出现语句,请确保将其链接回。您好,谢谢Darren,我最终自己也找到了相同的解决方案,。。。但是谢谢你!!我现在有另一个问题,。。。当我反复按F8键时,宏会工作,但当我按包含代码的commandbutton时,宏不会工作。。。。难以置信!谢谢@BruceWayne,我还删除了带有wsMain的,并添加了wsMain。任何需要的地方。不知道我是怎么解决的,。。。我猜某些事情开始慢慢但肯定有意义了!它应该是LastRow=.Cells(.Rows.Count,“C”).End(xlUp).Row
。您正在使用wsMain,但实际上从未“链接”任何范围到它。@DarrenBartrup-Cook的答案中包括将Cells()
链接到wsMain
。但是,稍后在循环中,您会遇到另一个不合格的单元格()
,如果您希望wsMain
上出现语句,请确保将其链接回。您好,谢谢Darren,我最终自己也找到了相同的解决方案,。。。但是谢谢你!!我现在有另一个问题,。。。当我反复按F8键时,宏会工作,但当我按包含代码的commandbutton时,宏不会工作。。。。难以置信!谢谢@BruceWayne,我还删除了带有wsMain的,并添加了wsMain。任何需要的地方。不知道我是怎么解决的,。。。我猜某些事情开始慢慢但肯定有意义了!