我在Excel中编写IFS语句时遇到问题。
这就是我想要发生的事情:用户从B1中的8个名字列表中选择。根据B1的选择,在B2中,用户将获得更精确的列表的下拉列表以供选择。
这就是我到目前为止写的IFS语句的方法,这会导致麻烦:
= IFS(B1 =" A",A),[" B",B],[" C",C],[&#34 ; d",d],[" E",E],[" F",F],[" G",G],[& #34; H",H])
我也写过这个也不起作用的东西:
= IFS(B1 =" A",A),[B1 =" B",B],[B1 =" C",C], [B1 =" d",d],[B1 =" E",E],[B1 =" F",F],[B1 =&# 34; G",G],[B1 =" H",H])
我不断收到错误消息。
有人有任何建议吗?
谢谢!
答案 0 :(得分:0)
在这种情况下,您还可以使用choose
和match
的组合。它更易读,更易于维护:
=CHOOSE(MATCH(B1,{"A","B","C","D","E","F","G"},0), "Action A", "Action B", "Action C", "Action D", "Action E", "Action F", "Action G")
它首先将用户的选择与选项列表匹配(您还可以将列表指定为工作表中的单元格范围)。然后它根据该选择选择动作。
答案 1 :(得分:0)
常见的方法是依赖下拉列表。很容易。
考虑一个简化的例子。
您有8个初始选项A-H。这将是您的第一个数据验证下拉列表的源列表。然后,对于该列表中的每个选择,您将创建与选择名称相同的命名范围。
如此命名的范围称为A
,B
等。
然后,对于第二个下拉数据验证,您将List和作为Source放入Indirect(包含第一个数据验证列表的单元格)
所以在下面的例子中:
初始下拉列表在C1中,其来源是E列
您可以在左上角的名称管理器框中看到列G
中突出显示的范围被命名为A
。
第二个下拉单元格D1
的源代码公式为=INDIRECT($C$1)
因此,当A
中选择了C1
时,D1中的数据验证会来自间接到命名范围A
,这是G
列中的列表。