Excel实现省-市-区/县级联

打印 上一主题 下一主题

主题 833|帖子 833|积分 2499

数据预备


  • 预备省份-都会映射数据,如下:
    新建sheet页,定名为:省-市数据源,然后预备数据,如下所示:

  • 预备都会-区|县映射数据,如下:
    新建sheet页,定名为:市-区|县数据源,然后预备数据,如下所示:

数据管理

数据预备完成之后,将映射数据装入名称管理器,如下:


  • 选中全部(鼠标点击第一行、第一列,然后ctrl+A)
  • 点击“公式”
  • 选择“指定”

  • 弹窗弹出后,将“最左列”前面的√去掉,然后点击确认

  • 实行完以上操作后,可查看数据是否加入“名称管理器”
  • 点击公式、点击名称管理器,即可查看
按照以上步骤,将“市-区|县数据源”中的数据也加入名称管理器
引用数据源实现级联


  • 实现省份下拉选择
    新建sheet页,定名为 “省-市-区|县级联” ,然后按照如图初始化表格:

    鼠标移入A2中,点击“数据”,点击“有效性”

    允许选择“序列”,然后点击如下图的小图标

    小图标点开之后,展示如下,此时我们去选择省份数据

    上图的样子保持,不要叉掉 ,sheet页切换到 省-市数据源

    此时,我们选择第一行全部列,鼠标移动到1,点击即可

    如上图操作完成后,回车、再确定

    则省份下拉实现完成

  • 实现都会下拉选择
    省份下拉实现完成后,都会级联下拉就非常轻易了,鼠标移入B2,点击数据,点击有效性,允许选择“序列”

    此时在来源中输入:
  1. =INDIRECT(A2)
复制代码
括号中的值就是省份所在的表格,点击确定

则按照如上图操作后,即可实现省份-都会级联


  • 实现区|县下拉选择
    区|县级联下拉与都会一样,鼠标移入C2, 点击数据,点击有效性,允许选择 “序列”
    ![在这里插入图片形貌](https://i-blog.csdnimg.cn/direct/a539b2ceef5

    c4c73bc0c61376361109c.png)
    此时在来源中输入:
  1. =INDIRECT(B2)
复制代码
括号中的值就是都会所在的表格,点击确定

实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空

实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空 需通过VB编程
选择 开发工具、选择 VB编辑器

打开之后,鼠标点击 “省-市-区|县级联” 的菜单,然后输入如下图所示代码

  1. Public sourceVal
  2. Private Sub Worksheet_Change(ByVal Target As Range)
  3. '判断是否等于历史
  4. If sourceVal <> Target.Text Then
  5.     If Target.Column = 1 Then
  6.        Range("B" + CStr(Target.Row)).ClearContents
  7.        Range("C" + CStr(Target.Row)).ClearContents
  8.     ElseIf Target.Column = 2 Then
  9.        Range("C" + CStr(Target.Row)).ClearContents
  10.     End If
  11. End If
  12. End Sub
  13. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  14.     sourceVal = Target.Text
  15. End Sub
复制代码
代码输入完成之后,CTRL+S 保存,关闭编辑器,即可实现省份切换、都会、区|县主动清空,都会切换、区|县主动清空

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

吴旭华

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表