Countifs语句编译但失败,运行时错误438

时间:2018-02-28 15:50:34

标签: excel vba excel-vba

我有一个宏,可以在同一本书的其他工作表中的数据中在一张纸上构建图表。目前,它编译但停在countifs语句上,该语句查看其他一个工作表上的日期。

违规行是:

Vector2 a = _packet.Data.GetVector2 (1);

该语句用于计算另一个工作表上的行,其中K列中的文本等于“已批准”,并且在特定周内的列M中有一个日期。我循环遍历此表的8行。列S是该周结束的日期。

所有内容都已完全引用以避免

  

运行时错误1004

thisBook是工作簿,rSheet是带有图表的工作表,sSheet是带有要评估的表的工作表。

哪个对象不支持此处的属性或方法?

1 个答案:

答案 0 :(得分:1)

试试这个,略微调整,以便更容易(我希望)阅读/关注:

Dim outputRng As Range
Dim rSheetVal as Date 
Set outputRng = rsheet.Range(i, "T")
rSheetVal = rsheet.Cells(i, "S").Value2   ' OR, rsheet.Range("S"&i).Value2

With thisBook.sSheet
    outputRng = Application.WorksheetFunction.CountIfs( _
                .Range("K2", "K" & .Cells(Rows.Count, "K").End(xlUp).Row), "APPROVED", _
                .Range("M2", "M" & .Cells(Rows.Count, "M").End(xlUp).Row), ">=" & (rSheetVal-6), _
                .Range("M2", "M" & .Cells(Rows.Count, "M").End(xlUp).Row), "<=" & (rSheetVal))
End With

假设thisBookrsheet设置为:

Set thisBook = ActiveWorkbook
Set rSheet = thisBook.Sheets("r Sheet")