基于子集的Excel countif
我试图根据他们的NAICS代码(行业分类代码)来统计我们支持的公司的数量。 当公司报名时,他们提供3,4,5或6位NAICS代码。
例如,假设我有三家公司join。 其中一个提供了六位NAICS代码311811
(零售面包房); 另外还提供了其六位代码311812
(商业311812
); 而最后一个select只提供其三位代码311
(食品制造)。
在我的电子表格中,join的所有公司名单都在Sheet“RawData”和J列中的NAICS代码中。所有NAICS代码的列表都在我的工作簿的Sheet“List”中,这是我想要返回NAICS代码中的所有公司的结果。
一个简单的sumif函数=COUNTIF(RawData!J:J,List!A1)
仅返回基于代码精确匹配的组织数量。 换句话说,我得到这个:
Code Count 311 1 3118 0 31181 0 311811 1 311812 1
我真正想得到的是
Code Count 311 3 3118 2 31181 2 311811 1 311812 1
在后面的表中,select311811
和311812
的两家公司应计入311代码和3118
和31181
代码的计数。
如果311
位于单元格A2
请尝试单元格B2
的以下数组公式以获得311
的数目:
=SUM(IF(ISERROR(SEARCH(A2,J:J)),0,1))
请注意,上面是一个数组公式,需要使用Ctrl + Shift + Enter (而不是仅仅按Enter )来input 。 你会看到Excel通过在公式中自动添加曲线括号来识别公式作为数组公式(不要手动input这些曲线括号):
{=SUM(IF(ISERROR(SEARCH(A2,J:J)),0,1))}
当然,可以通过向下拖动公式并在A3
栏中添加单元格A4
的值3118
的值31181
等来扩展以上内容。