需要使用VBA监控表格内容变化。实现方法如下:
1.先在sheet1 肯定不会使用的区域输入两列,分别对应“服务态度,业务能力”
将“语音语调、话外音、主动服务意识”区域命名为“服务态度”
将“需转化、查询错误”区域命名为“业务能力”
2.然后在sheet1代码页输入以下代码,作用是监控A1变化并依据变化调整B1设置。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("A1") Then
Range("B1").Validation.Delete
Range("B1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=" & Target.Text
End If
End Sub
首先看一下原始数据,原始信息在一张工作表,第一行是省市名称,下面的若干行为对应省市下面的地名和区名。需要在另外一张工作表中A列和B列建立联动的二级下拉菜单。
2
首先,选中原始表的所有数据(包括多余的空白单元格),按F5或者Ctrl+G调出定位对话框。选择左下角的【定位条件】。
3
如下图,选则【常量】,并点击【确定】按钮。这样,所有的非空单元格被选中。
4
选择功能区的【数据】-【有效性】-【根据所选内容创建】。
5
由于标题在第一行,因此选择【首行】为名称,然后点击【确定】按钮。
6
操作完毕后,在名称管理器中就可以看到定义的名称了。
7
选中第一行的省市名称(也定位到非空白单元格),在名称框中输入“省市”两个字,然后按回车,这样就定义了一个“省市”的名称。
8
选中操作界面的A2单元格,选择【数据】-【数据有效性】。
9
如下图,选择【序列】,【来源处】输入:=省市,然后点击【确定】按钮。
10
这样,就在A2单元格生成了省市信息的下拉菜单。
11
同样的方法,选中B2单元格,设置数据有效性,输入公式:=INDIRECT($A$2)。
12
设置完毕后,A2单元格选择“河北”时B2的下拉菜单返回“河北”的信息;A2单元格选择“北京”时B2的下拉菜单返回“北京”的信息。
13
注意:
上述二级下拉菜单设置的公式采取了行列都绝对引用,如果要使二级下拉菜单对整列均可用,将公式更改为:=INDIRECT($A2)即可。
以WPS 2019版本为例:
关于excel表格怎样设置多级下拉项,在WPS「表格(Excel)」中操作方法如下:
1、首先,我们在表格将数据分别录入到Sheet2和Sheet3中,Sheet2中是一级和二级,Sheet3中是二级和三级的数据。和之前制作二级下拉菜单的方式差不多,我们先进入Sheet2中,选择所有数据,点击「公式-指定-只保留「首行」前面的勾,其他的全部取消掉。同样的方法,我们再次进入Sheet3中进行操作;
2、设置一级下拉菜单:进入Sheet1,选中A2单元格,进入「数据-有效性-有效性-选择序列」,在「来源」中选择Sheet2中的「A1:C1」单元格(就是一级下拉菜单的内容);
(注意:设置完成后续先选中一个选项,否则设置二级时会提示错误)
3、设置二级下拉菜单。光标定位到B2单元格,然后进入「数据-有效性-有效性-选择序列」「来源」中输入「=INDIRECT(A2)」确定;
4、设置三级下拉菜单。选中C2单元格,同样的操作,只是在「来源」中输入的是「=INDIRECT(B2)」。最后,我们选中A2:C2单元格,向下填充一下。此时,我们的多级下拉菜单就已经全部完成。
方法/步骤
认识下拉菜单
如下图示例,第一级下拉菜单为省份,第二级则为市,第三级为县或区。第二级下拉菜单需根据第一级菜单的选择自动选择对应的市,同样,第三级下拉菜单需根据第二级菜单的选择自动选择对应的县或区。
制作第一级下拉菜单
第一级菜单为省,也即是广东、广西,因此直接利用数据有效性的引用即可。
制作第二级下拉菜单
第二级菜单为市,第二级菜单需根据第一级菜单的选择来显示第二级的菜单内容,如第一级选择广东,则第二级需要选择的菜单是“广州、东莞、深圳.....”;
制作第三级下拉菜单
第三级菜单为县区,第三级菜单需根据第二级菜单的选择来显示第三级的菜单内容,如第二级选择广州,则第三级需要选择的菜单是“天河区.....”;
5
去除数据有效性菜单中的空格
当在定义名称时,需选择定义名称的范围,如果范围内包括了空格,则菜单中就会形成空格,最简单的办法,仅选择有数据的范围来定义名称。
以上是如何创建excel中的级联菜单?的详细内容。更多信息请关注PHP中文网其他相关文章!