IT评测·应用市场-qidao123.com技术社区
标题:
Excel实现省-市-区/县级联
[打印本页]
作者:
吴旭华
时间:
2024-10-6 14:46
标题:
Excel实现省-市-区/县级联
数据预备
预备省份-都会映射数据,如下:
新建sheet页,定名为:
省-市数据源
,然后预备数据,如下所示:
预备都会-区|县映射数据,如下:
新建sheet页,定名为:
市-区|县数据源
,然后预备数据,如下所示:
数据管理
数据预备完成之后,将映射数据装入名称管理器,如下:
选中全部(鼠标点击第一行、第一列,然后ctrl+A)
点击“公式”
选择“指定”
弹窗弹出后,将“最左列”前面的√去掉,然后点击确认
实行完以上操作后,可查看数据是否加入“名称管理器”
点击公式、点击名称管理器,即可查看
按照以上步骤,将“市-区|县数据源”中的数据也加入名称管理器
引用数据源实现级联
实现省份下拉选择
新建sheet页,定名为 “省-市-区|县级联” ,然后按照如图初始化表格:
鼠标移入A2中,点击“数据”,点击“有效性”
允许选择“序列”,然后点击如下图的小图标
小图标点开之后,展示如下,此时我们去选择省份数据
上图的样子保持,
不要叉掉
,sheet页切换到 省-市数据源
此时,我们选择第一行全部列,鼠标移动到1,点击即可
如上图操作完成后,回车、再确定
则省份下拉实现完成
实现都会下拉选择
省份下拉实现完成后,都会级联下拉就非常轻易了,鼠标移入B2,点击数据,点击有效性,允许选择“序列”
此时在来源中输入:
=INDIRECT(A2)
复制代码
括号中的值就是省份所在的表格,点击确定
则按照如上图操作后,即可实现省份-都会级联
实现区|县下拉选择
区|县级联下拉与都会一样,鼠标移入C2, 点击数据,点击有效性,允许选择 “序列”

此时在来源中输入:
=INDIRECT(B2)
复制代码
括号中的值就是都会所在的表格,点击确定
实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空
实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空 需通过VB编程
选择 开发工具、选择 VB编辑器
打开之后,鼠标点击 “省-市-区|县级联” 的菜单,然后输入如下图所示代码
Public sourceVal
Private Sub Worksheet_Change(ByVal Target As Range)
'判断是否等于历史
If sourceVal <> Target.Text Then
If Target.Column = 1 Then
Range("B" + CStr(Target.Row)).ClearContents
Range("C" + CStr(Target.Row)).ClearContents
ElseIf Target.Column = 2 Then
Range("C" + CStr(Target.Row)).ClearContents
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
sourceVal = Target.Text
End Sub
复制代码
代码输入完成之后,CTRL+S 保存,关闭编辑器,即可实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/)
Powered by Discuz! X3.4