所以,我已經嘗試了許多變化的工作,但我不能做這項工作:VBA SUMIFS不注日期範圍
var_sum = WorksheetFunction.SumIfs(Range("H:H"), Range("B:B"), str_client, Range("A:A"), "<=" & date_var)
這個公式有2個條件。第二個(日期比較)將其分解並使總和= 0. date_var是Date變量。 Excel中的日期範圍被格式化爲日期。
什麼可能是錯的?
所以,我已經嘗試了許多變化的工作,但我不能做這項工作:VBA SUMIFS不注日期範圍
var_sum = WorksheetFunction.SumIfs(Range("H:H"), Range("B:B"), str_client, Range("A:A"), "<=" & date_var)
這個公式有2個條件。第二個(日期比較)將其分解並使總和= 0. date_var是Date變量。 Excel中的日期範圍被格式化爲日期。
什麼可能是錯的?
我有一種感覺,你有一個字符串與日期。
Date_Var = "01/01/2013"
你可以嘗試使用CDate(
或CLng(
將其轉換爲適當的值,如Excel存儲的天數日期過去的1900年1月1日
var_sum = WorksheetFunction.SumIfs(Range("H:H"), Range("B:B"), str_client, _
Range("A:A"), "<=" & CLng(date_var))
好像它應該工作。如果你在Excel中輸入相同的公式,它會起作用嗎?如果你對'date_var'和'A:A'中的值進行簡單比較,其中一些比date_var'少一些? –
您的日期是Excel日期格式(從1/1/1900 12:00:00 A.M.起的小時數和小時數) – user2140261
這對我有用。請描述一下沒有用的東西?此外,可能有助於發佈A)更多的代碼和B)示例工作表數據。否則,公式評估。但是,如果不瞭解更多關於您認爲無效的內容,並且沒有看到您正在使用的數據,則有時不能排除故障。 –