使Excel单元格选值列表随相关单元格的值变化
使用“数据有效性”功能,可以让填表者填出表格设计者期望的规范表格。当给单元格指定一组“数据有效性”中的“序列”后,填表者单击单元格时,就可从预设的备选值下拉列表中,选出设计者认可的合法值来填表。不过,当两个单元格的值之间有从属关系,如何使级别低的单元格的备选值下拉列表,随着级别高的单元格之值而变化呢?这里,将使用条件选择IF公式来实现这一功能。
操作方法
- 01
这里举例说明。打开Excel,先准备两张表,这里为明确起见,双击“Sheet1”和“Sheet2”的标签,将“Sheet1”更名为“数据有效性-列表公式”,“Sheet2”更名为“数据”。在“数据有效性-列表公式”表中,建立一个如图所示的带表头空表。
- 02
切换到“数据”表,填入下图所示数据。
- 03
选中“数据”表A1至A3单元格,在命名框中输入黄色高亮的“国家”二字。同样操作B1至B7,输入“美国州名”(这里仅作示例,没有将美国50多个州全部录入,后同);C1至C8命名为“中国省名”;D1至D6命名为“澳大利亚州名”。
- 04
切换回“数据有效性-列表公式”表,选中“国家”列下的A2至A10单元格,再以下图顺序依次点击“数据”功能区下的“数据有效性”,在弹出的对话框中,选择“设置”标签页“允许(A):”下的“序列”,清除“忽略空值(B)”前的复选框,然后在“来源(S):”文本框中,输入黄色高亮的“=国家”,最后点“确认”按钮退出。完成这些设置后,单击A2至A10单元格中任何一个单元格,都会出现一个下拉箭头,点此箭头,就会出现“美国、中国、澳大利亚”三个备选值,填表者就能在这三者中任选其一。
- 05
接下来,再处理“州/省”一列,要求是如果用户在A列选定某一国家,则在同一行B列单元格的下拉列表中,只能选择该国的州/省名,而不出现其他国家的州/省名。为了实现这一点,只需选定B2至B10单元格后,按第4的操作方法操作,但是在“来源(S):”文本框中,应改为输入“=IF(A3="美国",美国州名,IF(A3="中国",中国省名,IF(A3="澳大利亚",澳大利亚州名)))”,具体如下图所示。
- 06
完成后,测试可发现,随着A列国家的改变,B列单元格下拉列表备选值也会跟着变化。这就实现了低级别单元格的备选值列表,随高级别单元格值而变化的预期效果。