根据值条件将列值转换为行

时间:2017-06-23 10:24:23

标签: excel

我有以下Excel电子表格:

        A             B           C         D            E       F       G
1                    Sale 1     Sale 2    Sale 3
2    Product A           0       150       400                 Sale 2  Sale 3
3    Product B       1.000         0       300         Sale 1          Sale 3
4    Product C          50        200       70         Sale 1  Sale 2  Sale 3
5    Product D         800          0        0         Sale 1

列B:D 中,您可以看到每种产品的销售额。

列E:G 中,我想显示销售产品的销售情况。因此,应显示<> 0的销售。

到目前为止使用了这个公式:

=INDEX($B$1:$D$1,MATCH(TRUE,INDEX($B2:$D2<>0,),0))

但只有产品只出售一次(唯一)才有效。 一旦产品出现在更多的销售中,例如产品A 公式只给我支持Sale 2,但它不包括Sale 3。

有没有办法列出产品旁边的每笔销售。 像htis这样的东西:

Transposition IF value <>0

1 个答案:

答案 0 :(得分:0)

在E2中并横向和向下复制以适应:

=IF(B2>0,B$1,"")

B2没有锚定,因此在复制时会调整为C2等(当向下复制时B3等 - 相当于RC [-3])而B$1的行被锚定所以不会更改(但列将与B2的列一致)。