我需要一个能够满足下面提到的需求的公式或功能 . 我有一个大约11000行的Excel数据,数据看起来有点像A列:现在在B列中我希望打印结果如下所述:字面意思是它应该计算A列中的值并将其打印出来B列,我不需要重复计数:
Column A Column B
PC-101 1
PC-101 1
PC-102 2
PC-102 2
PC-103 3
PC-104 4
PC-106 5
PC-107 6
PC-104 4
PC-106 5
PC-106 5
我尝试使用“count”系列公式,但结果为null . 即使我写下如下给出的宏(我从stackoverflow得到),但即使是打印重复计数:
Sub CountOccurence()
' Reference: Microsoft Scripting Runtime
Application.ScreenUpdating = False
Set oDict = New Dictionary
Dim wS As Worksheet
Dim r As Integer, rLast As Integer
Set wS = Sheet1
rLast = wS.Cells(1, 1).CurrentRegion.Rows.Count
For r = 3 To rLast Step 1
If Not (oDict.Exists(wS.Cells(r, 1).Value)) Then
oDict.Add wS.Cells(r, 1).Value, 1
Else
oDict.Item(wS.Cells(r, 1).Value) = oDict.Item(wS.Cells(r, 1).Value) + 1
End If
wS.Cells(r, 2).Value = oDict.Item(wS.Cells(r, 1).Value)
Next r
Set oDict = Nothing
Application.ScreenUpdating = True
End Sub
任何人都可以帮我这个吗?提前致谢 .
2 回答
假设您对列a中的数据进行了排序,您可以简单地将
1
放在B3中的B2公式中并将其复制下来::-)
一个简单的Excel公式可以做到这一点 .
将
1
放在单元格B1中,然后将此公式放入单元格B2
并将其拉下 .