细胞间的数量vba

时间:2013-12-12 14:45:29

标签: vba excel-vba excel-formula excel

我陷入了无法解决的境地。

我有一个显示客户及其订单的清单,如下图所示。客户i列A和订单号B列

客户 - Ordernumber

  • John - 123
  • 约翰 - 456
  • 约翰 - 789
  • 约翰 - 321
  • John - 654

    -

  • Pauline - 251
  • Pauline - 251
  • Pauline - 251

等100多位客户。

如何计算每位客户的数量或订单并将其写入例如C栏?在上面的例子中,John已经订购了5个订单而Pauline 3订单。

3 个答案:

答案 0 :(得分:2)

您可以使用公式:

=COUNTIF(A:A,"John")

这会计算范围A:A中与字符串"John"匹配的单元格数。

您还可以引用要匹配的单元格,例如:

=COUNTIF(A:A,A1)

这将计算A列中与单元格A1匹配的单元格数,包括A1。

答案 1 :(得分:2)

我会这样做

示例数据

enter image description here

按名称(包括B列)

对A列进行排序

enter image description here

在C栏第1行中添加公式=COUNTIF(A:A,A1)

然后在B行添加此公式=IF(A2=A1,"",COUNTIF(A:A,A2))

然后将第二个公式一直拖到自己的位置,结果应为

enter image description here

答案 2 :(得分:0)

如果您不想使用某个功能,您还可以使用小计命令(在Office 2010中的数据菜单中)并在“使用功能”字段和 Ordernumber中选择计数功能在“添加小计到”列表中。

要使Subtotal命令起作用,您必须拥有列标签。 请注意,这将插入新行,而不是将总数放在新列中,您可以接受或不接受。

有关该命令的Office联机帮助,请参阅here