【问题标题】:Formula: Count text instance within table range公式:计算表格范围内的文本实例
【发布时间】:2014-11-21 19:45:45
【问题描述】:

我想在设定的范围内找到文本的实例。

以下公式通常会起作用并产生以下信息:

=COUNTIFS($B$2:$B2;$B2)

助手姓名
1 鲍勃
2 鲍勃
1 约翰
2 约翰
3约翰

但是,在表格中使用此公式并将数据插入新行时,您会在 John 的第二个实例中得到:

   =COUNTIFS($B$2:$B6;$B5)     

帮助名称
1 鲍勃
2 鲍勃
1 约翰
3 约翰
3 约翰
而 John 的第二个实例应该是:

   =COUNTIFS($B$2:$B5;$B5)     

由于表格会在添加另一行时自动填充公式,是否有其他方法可以使该公式或使该公式起作用的选项?
遗憾的是,以下代码不起作用:

=COUNTIFS($B$2:$B&Row(B5);$B5)

感谢大家的支持!

【问题讨论】:

  • @pnuts - 虽然"B$2:B" 中的 $ 很好地提醒了正在完成的工作,但严格来说,这不是必需的,因为文本值永远不会增加。

标签: excel count excel-formula instance


【解决方案1】:

这是使用常规单元格引用的表格、新行和自动填充公式的已知问题。如果您维护单元格寻址的表格方法,您可以用OFFSET 重塑COUNTIFrange 参数,并为 Name中的相邻单元格使用表格单元格引用> 栏目。

    

标题下方第一个Helper列单元格中的公式是,

=COUNTIF(OFFSET([Name],0,0,ROW(1:1),1),[@Name])

OFFSET 是另一个volatile 函数(如INDIRECT),可在任何计算周期重新计算;不仅仅是那些影响其结果的价值观发生变化的地方。如果你有大量的数据,计算滞后很快就会变得很烦人。

更多信息请访问Use structured references in Excel table formulas

【讨论】:

  • 吉普车打得很好。非常感谢您的回答和链接。现在也很高兴开始使用新的公式方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-12
相关资源
最近更新 更多