所以我看了数&但是没有看到我想要完成的事情。基本上我有3列数据。 销售人员,城市,日期
数据可能如下所示:
SM1 City1 07/01/2010
SM2 City1 07/01/2010
SM1 City2 07/01/2010
SM3 City1 07/01/2010
我想添加第4列,显示该日期有多少销售人员访问该城市的计数。 所以我想最终得到:
SM1 City1 07/01/2010 3
SM2 City1 07/01/2010 3
SM1 City2 07/01/2010 1
SM3 City1 07/01/2010 3
所以我需要根据城市和日期计算出数量。 任何帮助,将不胜感激。只是一些指示将是最受欢迎的。 我想使用VBA并能够动态确定行数,因为它不会是静态的。
答案 0 :(得分:2)
我不确定为什么你需要VBA,一个简单的COUNTIFS公式将适合你。使用您提供的示例数据,在单元格D1中使用此公式并复制:
=COUNTIFS(B:B,B1,C:C,C1)
答案 1 :(得分:0)
我同意@tigeravatar公式=COUNTIFS(B:B,B1,C:C,C1)
将为您做到这一点。只需双击D列最后一行的右下角,然后让你填写。
如果你因为某种原因而不愿意使用VBA,你可以试试这样的事情,假设你已经在D栏的最后一行中有上述公式:
Sub countIf()
'Get the last row in the sheet, presumably where your A/B/C columns end
sheetLastRow = ActiveSheet.Cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious).Row
'Get the last row of the D column where your formula should be
countIfLastrow = ActiveSheet.Range("D" & Rows.Count).End(xlUp).Row
'Copy the formula down the D column to the end of your A/B/C columns,
' just like clicking the corner of the cell
ActiveSheet.Range("D" & countIfLastrow).AutoFill Destination:=ActiveSheet.Range("D" & countIfLastrow & ":D" & sheetLastRow)
End Sub