这是我在这里发表的第一篇文章,非常感谢您的帮助!我在这个网站上看了很多其他帖子,但是我找不到我的具体问题的答案。我尝试使用VLOOKUP
,INDEX
,MATCH
,数据透视表等。但是它并没有按照我想要的方式运行。
背景资料:对于我的论文,我正在研究单一细分市场和多细分市场的资本成本差异。我的数据集包含两个表,一个包含公司段的SIC代码,另一个包含该段的相应销售额。这些表的问题是第一个表中有重复的SIC代码。我想从第一个表中删除重复项,同时计算第二个表中这些重复SIC代码的销售总和。
我的数据如下:
每个细分受众群的SIC代码和每个细分受众群的销售额: Input of SIC codes and sales per segment (one company for 20 years)
我想要做的是消除重复的SIC代码。如果我使用SIC代码更改表格,我还需要具有销售额的表格进行相应更改。但是,不应删除重复段的销售,而是将其添加到第一个重复段。我可以为一家公司手动计算,但对于1800家公司来说,这将非常耗时。 SIC代码和Sales的手动计算输出看起来像这样(所以我不需要合并表,输出仍然在两个不同的表中): Required output for the SIC codes table and Sales table (one company for 20 years
非常感谢!
答案 0 :(得分:0)
这是解决问题的方法。分为两部分:获取每行中唯一的SIC代码列表,并总结出唯一的相应值。
第一部分:
这部分的一般逻辑:嵌套的INDEX
函数。
假设您的输出表(包括标题A25:J45
的范围)正好在主/输入表下方(包括标题A1:J21
的范围)。假设只有20行数据,但您可以将公式拖动到尽可能多的行。
第一列应始终从输入表的相应第一列中获取值。 A26 =A2
等等。
对于B26,请使用此公式=INDEX($A2:$J2,MATCH(0,INDEX(COUNTIF($A26:A26,$A2:$J2),0,0),0))
您可以将此公式拖到J45 /输出表的末尾。 (您可以在Excel中使用“评估公式”来理解逻辑的工作原理) 这应该为您的输出表填充每行的唯一SIC代码。
第二部分:
此部分的一般逻辑:SUM
和数组
假设您的输出表(包括标题L25:U45
的范围)正好在主/输入表下方(包括标题L1:U21
的范围)。假设只有20行数据,但您可以将公式拖动到尽可能多的行。
在单元格L26(第一行,输出表格中最左边的元素)中,您需要一个数组公式(Ctrl
+ Shift
+ Enter
)。如果您不知道读取的数组公式为here。
L26 {=SUM(IFERROR($A2:$J2=A26,0)*IFERROR($L2:$U2,0))}
的公式。
您需要在L26 =SUM(IFERROR($A2:$J2=A26,0)*IFERROR($L2:$U2,0))
中仅输入此内容,然后点击Ctrl
+ Shift
+ Enter
。 Excel将自己的大括号括在它周围。
将公式粘贴到输出表的其余部分。
答案 1 :(得分:0)
在数据标签Screenshot
上的excel 2010中有删除重复项功能