【问题标题】:Comparing the cell values and printing the count in Excel using a formula or function?使用公式或函数比较单元格值并在 Excel 中打印计数?
【发布时间】:2013-12-14 13:12:15
【问题描述】:

我需要一个公式或函数来满足我下面提到的需求。我有大约 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

我尝试使用“计数”系列公式,但结果为空。 即使我写了如下给出的宏(我从stackoverflow获得),但即使它正在打印重复计数:

子计数发生() ' 参考:Microsoft 脚本运行时 Application.ScreenUpdating = False 设置 oDict = 新词典 将 wS 调暗为工作表 Dim r As Integer, rLast As Integer 设置 wS = Sheet1 rLast = wS.Cells(1, 1).CurrentRegion.Rows.Count For r = 3 To rLast Step 1 如果不是 (oDict.Exists(wS.Cells(r, 1).Value)) 那么 oDict.Add wS.Cells(r, 1).Value, 1 别的 oDict.Item(wS.Cells(r, 1).Value) = oDict.Item(wS.Cells(r, 1).Value) + 1 万一 wS.Cells(r, 2).Value = oDict.Item(wS.Cells(r, 1).Value) 下一个 设置 oDict = 无 Application.ScreenUpdating = True 结束子

有人可以帮我解决这个问题吗?提前致谢。

【问题讨论】:

    标签: vba excel excel-formula


    【解决方案1】:

    我尝试了“计数”系列公式,但结果为空。

    一个简单的 Excel 公式就可以做到这一点。

    将1放入单元格B1,然后将此公式放入单元格B2并拉下。

    =IF(COUNTIF($A$1:$A2,A2)>1,VLOOKUP(A2,A:B,2,0),B1+1)
    

    【讨论】:

    • 悉达多,效果很好!!就像单程一样。现在你能帮我解决类似的问题吗?现在在 B 列而不是计数值中有一些其他数值。例如 PC-101 有 20 个,PC-101 在下一个单元格中也有 30 个 .. 类似的东西。现在我想为 PC-101 添加所有这些单元格值并显示在一个特定的单元格中。有没有办法修改相同的公式以便我可以得到结果?请立即..
    • 您可以从一个新问题开始:)这样,如果我不在线,其他人将有机会帮助您:)
    【解决方案2】:

    假设您在a列中的数据已排序,您可以简单地将1放在B2中,然后将这个公式复制到B3中:

    =IF(A2<>A3,B2+1,B2)
    

    :-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-02
      • 2019-11-26
      • 1970-01-01
      相关资源
      最近更新 更多