VBA 不同欄位多條件統計問題

看板Office作者 (aMao)時間6年前 (2017/09/22 12:29), 6年前編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
(若是和其他不同軟體互動之問題 請記得一併填寫) 軟體:EXCEL / VBA 版本:2010 請問各位大大 假設工作表的A欄為日期,B欄位為姓名 我知道怎麼分開計算出A列表同一天日期的欄位個數 也能夠統計B列表同一個人的欄位數 比如: WorkbookFunction.Countif(sheets(1).column(2),"王小華") 但我試了很久就是不知道怎麼統計出 “A欄位符合某一天且B欄位為王小華”的方式T.T 我知道還有一種可行方法是用for循環 for i=1 to xxx if range("A" & i)=date and range("B" & i) then x=x+1 然後最後回報x的值就好 但總是很困惑邏輯上應該是可以透過count之類的式子找出條件聯集欄位才對 我也試過用Sumproduct 但發現雖然在儲存格函數中我可以直接寫 =sumproduct((A:A="9/21")*1,(B:B="王小華")*1) 就輕易計算出來 但若用VBA來寫入同樣式子的話則是系統會報錯,不知道VBA寫法要如何修改 畢竟如果每次要使用程式前都得自己先到工作表手動算出代數值的話好像就失去意義了( 抓頭) 請教各位前輩有比較聰明的編寫方式嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.79.26 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1506054554.A.66A.html

09/22 12:40, , 1F
將countif改為countifs試試
09/22 12:40, 1F
感謝建議 我之前有試過這個式子 但參考微軟的說明以為是 countifs(範圍,條件1,條件2,條件3…) 因而不得其解… 剛剛又再谷歌了一次偶然看到有人提到 正確用法應該是 countifs(範圍1,條件1,範圍2,條件2…) _(:3」z)_ 竟然成功了! 原來是我理解能力有問題啊…… ※ 編輯: kunkka (114.136.79.26), 09/22/2017 15:24:24
文章代碼(AID): #1Pn96QPg (Office)