【Excel】某列数据有效性根据另外一列数据有效性进行动态更改

基本功能需求如下:图1中漏洞的一级分类和二级分类都需要从图2中的sheet里进行选择。若漏洞A的一级分类选择了“一类”,则二级分类对应为“高危、中危、低危”三种;若选择了“二类”,则二级分类为“基础结构、应用系统”两种,以此类推,二级分类是根据一级分类的选择来进行选择的。

漏洞名一级分类二级分类
漏洞A二类基础结构
漏洞B三类SQL注入
漏洞C一类高危
漏洞D  

图1 sheet-漏洞分类总表

一类二类三类
高危基础结构SQL注入
中危应用系统跨站点脚本编制
低危

图2 sheet-分类总表


具体的实现步骤:

1)先将“分类总表”sheet的第一行命名,我取的“一级分类”,可自行修改。然后对1、2、3类分别命名,依次为“一类的二级分类”、“二类的二级分类”、“三类的二级分类”。excel的命名方法为选择改行或是该列,然后在图3红框所在位置写上名字,或是用ctrl+f3来命名。


图3 excel命名方法

2)选中“漏洞分类总表”sheet的B列,选择【数据】→【数据工具】→【数据有效性】→【设置】→【序列】,然后输入公式:“=一级分类”(只写最外层引号里面的公式,下同)

3)选中C2,【数据】→【数据工具】→【数据有效性】→【设置】→【序列】,然后输入公式:“=IF(B2="一类",一类的二级分类,IF(B2="二类",二类的二级分类,IF(B2="三类",三类的二级分类)))”

4)选中C2,ctrl+c,选中C列(除C1),然后【选择性粘贴】→【有效性验证】,即可实现整个C列(除C1)相同的数据有效性选择功能。

通过以上步骤就可实现文章开始所述功能。

因为命名是整行或是整列,所以在“漏洞分类总表”的C列的数据有效性还包含了“分类总表”中的第一行的内容。若有人解决方法,请指导……在这儿先谢过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值