为什么这个公式不起作用?

Pr0*_*0no 0 excel excel-formula

考虑以下(部分)Excel表:

 | A |   B     C     D
-+---+------------------
1|id | comp1 comp2 comp3
-+---+------------------
2| 1 |   1     0     0
3| 1 |   1     0     0
4| 2 |   0     1     0
5| 3 |   0     0     1
6| 1 |   1     0     0
7| 3 |   0     0     1
Run Code Online (Sandbox Code Playgroud)

例如,如果填写所有零和一个列B,CD手动填写.我需要自动执行此操作,因为我的数据集很大,可以手动执行.我需要,例如对于单元格B2,一个公式,检查值A2是否与id单元格中的公司相似B1.如果是这样,请设置a 1,否则为a 0.另一个例子:第4行.它id 2在单元格中有公司A4所以B4(comp1)应该是0,C4 1D4 0.

我在单元格B2中使用了以下公式,准备拖动到所有其他单元格:

=IF($A2=RIGHT(B$1;1);1;0)
Run Code Online (Sandbox Code Playgroud)

但是,它放入了0B2.我不明白,因为A2它有价值1,所以RIGHT(B1;1),所以IF(1=1;1;0),所以B2应该得到价值1.但它不会在哪里出错?

小智 5

因为right()返回一个字符串,并将字符串与数字进行比较.您需要将该字符串转换为数字,例如使用值(右(...)).