将字母分配给区域
Posted
技术标签:
【中文标题】将字母分配给区域【英文标题】:Assign letters to areas 【发布时间】:2016-02-17 16:50:56 【问题描述】:我有点卡在一个 Excel 问题上,我需要在列中分配某些位置(A、B、C、D、E 和 F)以输出 North
、Centre
和 South
称为“区域”。
例如,有人告诉我:
如果任何个人在A
、C
或D
工作,则将被归类为South
。
如果工作区是B
和E
,那么它将是Centre
。
最后,如果有人在F
区域工作,那么它将是North
。
我的外部单元格应该是什么样子?
【问题讨论】:
能否附上布局截图。我不太明白描述。使用 imgur.com 托管图像。 查看 IF() 公式。 当然我的不好很难解释 :D imgur.com/FfeA67B 您可以在 AND 函数中放置两个以上的术语... 一个小的查找表和VLOOKUP()
会做到这一点。
【参考方案1】:
假设要分配的区域字母在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 选择的名称,其中包括A
到F
依次在一列中,并且在紧邻该列(匹配行)右侧的列中,相同的“南”、“中”、 ....,“北”。
IFORCHOOSECODEVLOOKUP
还有其他方法,例如,代替垂直命名范围,使用水平命名范围和HLOOKUP。
【讨论】:
以上是关于将字母分配给区域的主要内容,如果未能解决你的问题,请参考以下文章
Powershell根据给定的计数选择一个随机字母,并动态地将每个字母分配给一个唯一的变量?
PL/PGSQL - 无法将 SELECT 语句中的 array_agg 分配给变量