跨工作簿中的多个工作表运行VBA代码
我使用下面的代码利用“前一周应用”表进行数据收集,并更新同一张表中的计数 我已经创建了一个按钮,我正在尝试通过该按钮运行此代码 在执行时,我在第行中得到了错误“objectrequired” 我的代码:跨工作簿中的多个工作表运行VBA代码,vba,excel,Vba,Excel,我使用下面的代码利用“前一周应用”表进行数据收集,并更新同一张表中的计数 我已经创建了一个按钮,我正在尝试通过该按钮运行此代码 在执行时,我在第行中得到了错误“objectrequired” 我的代码: Sub Prevcount() Sheets("Previous Week apps") With ActiveWorkbook.Worksheets("Previous week apps") [W5] = wf.CountIf(.Range("I:I"), "Trophy") E
Sub Prevcount()
Sheets("Previous Week apps")
With ActiveWorkbook.Worksheets("Previous week apps")
[W5] = wf.CountIf(.Range("I:I"), "Trophy")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W7] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("E:E"), "COMPATIBLE")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W9] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("F:F"), "COMPATIBLE")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W11] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("Q:Q"), "UG")
End With
End With
End Sub
请尝试短版本(将ActiveWorkbook
替换为thiswoolk
,在那里您有自己的代码):
您是否打算将
工作表(“上周应用程序”)
与工作表(“上周应用程序”)(与代码末尾的结尾处的匹配),如果是这样,你在用块做什么?你的代码中没有任何东西在使用它。@YowE3K所以我应该用工作表(“前一周的应用”)将它改为
?在.Range(“W5”).Value=wf.CountIf(.Range(“i:i”),“tropy”)
Sub Prevcount()
Sheets("Previous Week apps")
With ActiveWorkbook.Worksheets("Previous week apps")
[W5] = wf.CountIf(.Range("I:I"), "Trophy")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W7] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("E:E"), "COMPATIBLE")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W9] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("F:F"), "COMPATIBLE")
End With
With ActiveWorkbook.Worksheets("Previous week apps")
[W11] = wf.CountIfs(.Range("I:I"), "Trophy", .Range("Q:Q"), "UG")
End With
End With
End Sub
Sub Prevcount()
With ThisWorkbook.Worksheets("Previous week apps")
.Range("W5").Value = WorksheetFunction.CountIf(.Range("I:I"), "Trophy")
.Range("W7").Value = WorksheetFunction.CountIfs(.Range("I:I"), "Trophy", .Range("E:E"), "COMPATIBLE")
.Range("W9").Value = WorksheetFunction.CountIfs(.Range("I:I"), "Trophy", .Range("F:F"), "COMPATIBLE")
.Range("W11").Value = WorksheetFunction.CountIfs(.Range("I:I"), "Trophy", .Range("Q:Q"), "UG")
End With
End Sub