Google sheets 对Google工作表中范围内的每个单元格执行if语句
假设我有一张像Google sheets 对Google工作表中范围内的每个单元格执行if语句,google-sheets,Google Sheets,假设我有一张像 || A | B | C | D | E | F | G ============================== 1 || 1 | 0 | | ? | 1 | 0 | 1 我想创建一个新行,其中每个值都是1或0。逻辑是如果单元格为空或?则应为0 最近的一次是 =ArrayFormula(if(A1:G1="?", 0, A1:G1)) 这给了我 || A | B | C | D | E | F | G ============================
|| A | B | C | D | E | F | G
==============================
1 || 1 | 0 | | ? | 1 | 0 | 1
我想创建一个新行,其中每个值都是1
或0
。逻辑是如果单元格为空或?
则应为0
最近的一次是
=ArrayFormula(if(A1:G1="?", 0, A1:G1))
这给了我
|| A | B | C | D | E | F | G
==============================
1 || 1 | 0 | | ? | 1 | 0 | 1
2 || 1 | 0 | | 0 | 1 | 0 | 1
但是只要我添加一个或来检查空格
=ArrayFormula(if(or(A1:G1="?", isblank(A1:G1)), 0, A1:G1))
那么我只得到1个单元格:
|| A | B | C | D | E | F | G
==============================
1 || 1 | 0 | | ? | 1 | 0 | 1
2 || 1 | | | | | |
我做错了什么?或者有更好的方法吗?两种方法:
只需将另一个条件放在值\u is\u false
位置即可
=ArrayFormula(if(A1:G1="?", 0, IF(ISBLANK(A1:G1), 0, A1:G1)))
使用+
表示或。这是因为“真”值计算为1
,“假”值计算为0
。所以,0+0=false
,1+0=true
。对于和,将…0*0=false
,1*0=false
,1*1=true
=ArrayFormula(if((A1:G1="?")+(ISBLANK(A1:G1)), 0, A1:G1))