0
我想總結一行有偏差的事實,即另一行與用戶定義的變量具有相同的月份。我相信sumif函數是我最好的選擇,但它似乎不適合我。我希望它明顯看到的行是日期格式的日期(使用.numberformat =「ddd mm/dd」),但sumif似乎無法挑出每個單元格中的月份。這裏是我到目前爲止的代碼:SumIf使用VBA中的日期和範圍
Dim cMade As Integer
Dim sDate As Date
cMade = cMade + Application.WorksheetFunction.SumIf(ActiveSheet.Range("B1:RC1"), Month(sDate), ActiveSheet.Range("B30:RC30"))
正如你可以看到SDATE是通過用戶窗體用戶imputs然後我轉換,使用dateserial的日期。和B1-RC1是我希望它看的日期。如果月份匹配的話,Range B30-RC30就是我希望它獲得的金額(我之所以把它作爲+ cMade的原因是因爲它是在一個循環中循環遍歷紙張)。
此編碼是否正確?我一直在搞它,並尋找幾個小時的替代品,但我似乎不能提供任何東西!
嗯感謝您的幫助,我確實需要糾正這些事情,但出於某種原因cMade始終爲0,好像我沒有將sumif指向正確的總和行(我確信我是)。 – MainTank
你能分享一下你現在的'cMade = ...'字符串嗎? –
我注意到如果我嘗試在工作表中使用sumif函數來測試ex:= Sumif(B1:J1,Month(1),B30:J30),它仍然會給我一個零值。 我用我的新字符串更新了原始問題。 – MainTank