我有一个包含姓名和性别的学生数据库,但该列表包含不同日期的学生重复数据。我如何计算我名单上独特的男学生和独特女学生的数量?
以下是一个示例数据库:
Name Date Gender
A 8/1/2013 M
B 8/2/2013 F
C 8/2/2013 F
A 9/2/2013 M
A 9/3/2013 M
C 8/31/2013 F
B 8/15/2013 F
D 10/5/2013 M
独特男性的总数应为2,独特的女性应为2。
我试着玩总和(如果(频率))变化公式,但没有运气。我不确定如何将其与使用名称联系起来。
我也不介意使用VBA代码。
任何建议都将不胜感激。
谢谢!
答案 0 :(得分:1)
假设每个名称在重复(!)时总是具有相同的性别,您可以使用这样的公式来计算列表中的不同男性:
=SUMPRODUCT((C2:C100="M")/COUNTIF(A2:A100,A2:A100&""))
显然将女性数量的M改为F
答案 1 :(得分:0)
首先按名称A到Z对表进行排序,然后运行此宏。请注意,我很难编码范围A2:A9。
这仅在您首先对列表进行排序时才有效。选择所有列和行,然后右键单击并按名称列对A到Z排序。
Sub LoopRange()
Dim rCell As Range
Dim rRng As Range
Set rRng = Sheet1.Range("A2:A9")
Dim countM As Integer
Dim countF As Integer
Dim name As String
For Each rCell In rRng.Cells
If rCell.Value > name Then
If rCell.Offset(0, 2).Value = "M" Then
countM = countM + 1
End If
If rCell.Offset(0, 2).Value = "F" Then
countF = countF + 1
End If
End If
name = rCell.Value
Next rCell
MsgBox ("Males = " & countM & ", Females = " & countF)
'Range("E3").Value = countF
'Range("E4").Value = countM
End Sub