我有点卡在Excel问题上,我需要将某些位置(A,B,C,D,E和F)分配给输出North
,Centre
和{{ 1}}在名为“Area”的列中。
例如我被告知:
如果任何个人在位置South
,A
或C
工作,将被归类为D
。
如果工作区域为South
和B
,那么它将是E
最后,如果有人在Centre
区域工作,那么它将是F
。
我的外部细胞应该如何显示?
答案 0 :(得分:0)
假设要分配的区域字母在A1中,
一种方式:
=IF(A1="F","North",IF(OR(A1="B",A1="E"),"Centre","South"))
这可能是你最接近你的尝试。 South
保留为默认值以保存为其指定三个字母(A
,C
和D
- North
和Centre
仅需要他们之间的三个)。
另一种方式:
=CHOOSE(CODE(A1)-64,"South","Centre","South","South","Centre","North")
这会将字母转换为代码编号,然后扣除64(因此A
会产生1
,B
会产生2
等等,然后将其作为从显示的选项中选择的选项。
第三种方式:
=LOOKUP(R1,{"A","B","C","D","E","F"},{"South","Centre","South","South","Centre","North"})
与第二种方式类似但没有字符代码转换。使用查找表(下面)更常见的公式版本。
第四种方式:
=VLOOKUP(A1,AreaTable,2,0)
这是@Tim Williams提到的。 AreaTable
是Named Range的名称选择,IF在一列中按顺序包含A
到F
,并且在其右侧的列中(匹配的行)相同“南方”,“中心”,......,“北方”。
OR
CHOOSE
CODE
VLOOKUP
HLOOKUP
还有其他方法,例如,而不是垂直命名范围,水平和https://github.com/dlmanning/gulp-sass/issues/394。