VBA SumIfs不使用日期范围

ftk*_*tkg 1 excel vba excel-vba

所以,我尝试了很多变化,但我无法做到这一点:

var_sum = WorksheetFunction.SumIfs(Range("H:H"), Range("B:B"), str_client, Range("A:A"), "<=" & date_var)
Run Code Online (Sandbox Code Playgroud)

该公式有2个条件.第二个(日期比较)打破它并使sum = 0. date_var是一个Date变量.Excel中的日期范围格式为日期.

可能有什么不对?

Sea*_*anC 7

我觉得你有一个日期字符串.

Date_Var = "01/01/2013"
Run Code Online (Sandbox Code Playgroud)

您可以尝试使用CDate(CLng(将其转换为适当的值,因为Excel将日期存储为1900年1月1日之后的天数

var_sum = WorksheetFunction.SumIfs(Range("H:H"), Range("B:B"), str_client, _
    Range("A:A"), "<=" & CLng(date_var))
Run Code Online (Sandbox Code Playgroud)