Excel数据有效性-二级、三级联动菜单(普通版)(二)

数据有效性通过限制单元格的录入内容,从而提高数据录入的准确性,且能降低数据录入的便捷性和数据校验工作。


在早些版本中,数据有效性在数据菜单下,叫数据有效性。而在Excel2016版在数据菜单下叫“数据验证”,本次演示使用的是Excel2016,依然采用了“数据有效性”的叫法,虽然不够规范,但方便大家理解。

如果有条件,建议大家使用最新的版本,其功能相对更加齐全,相对于低版本能更加方便的操作我们需要的内容,不仅仅是本次教程所用,而在于整体会对你的学习状态会有一个明显的提升。

下载Office2016-简书私信回复“2”获取下载密码


设置二级、三级联动菜单(二)

联动菜单也分为两个版本:普通版进阶版

普通版:

也就是我们网络上常见的一些做联动菜单的方法,其菜单和子项都比较少,可以手工对源数据进行分组归类也可也使用其他方法。本篇文章介绍的就是普通版。

进阶版:

进阶版将对3000多条数据进行分组归类,并做演示,由于数量级比较大,部分方法和需要注意的问题与普通版不太一样,适合对该问题有深度需求的用户。

本次为了更加真实的展示二级、三级联动菜单的效果,从网上下载了省级行政划分结构数据,共计3130条数据,如果3000条数据我们都能搞定,那么再多的分类再多的子项我们都不要发愁了。其四级、五级乃至更多的联动,方法都是一样的。下载演示文件-简书私信回复3获取下载密码

调整数据分组(选学)

该章节为拓展学习,如果你的联动菜单和子项比较少,可以跳过该章节,直接进入主题部分。点击查看详细操作步骤,提供了两种分组的方法,一个是我自己总结的方法,通过数据透视加上一些操作实现的,另一种是通过Power Query实现的,该方法参考了施阳的博客。

我们拿到的是左侧的数据,但是必须转换为右侧的分组才能进行区域名称和位置的定义,所以我们需要对数据进行转换。对于普通版知道两个方法即可。1、手工调解,如果数据不多可以手工进行设置;2、通过大鹏老师教你的利用数据透视进行转换的方法;其他还有通过数组公式和Power Query两种,甚至VBA,但是对于普通用户而言可能稍难,这些方法会在进阶篇进行讲解。

也就是说我们需要把省份归类到一起,同时在把每个省份作为标题,将对应的城市放在对应省份的下面,最后再把所有的城市作为标题,将对应的区县放在对应的城市下面,如果有更多级,依此类推,并分别对名称和区域进行定义后才能使用。

下面是效果的参考标准。每一个一级的子项都是二级的标题、二级的子项是三级的标题。这里我们需要注意一个问题,就是作为标题的名称,不能有重复,无论是哪一级,否者你无法对名称进行合理的指定。在最末级中,其不同仔项之间是可以重复的。

由于我拿到的源数据存在重复的问题,所以我对名称少做了调整。比如北京市和天津市的二级分类都有叫“市辖区”,如果我把市辖区作为标题在对对应的区县进行归类时,标题就会重复。我实际已经对源数据做了调整,用以避免掉这个问题。

效果.png

省份分组设置

将省份列复制出来后去重即可得到省份的分组。


省份去重得到分组.png
城市分组设置
  • 该步骤稍微麻烦一些,可以通过数据透视再加上一些步骤可以得到我们想要的格式。首先我们需要透视该源数据,可以指定位置到另一个新的工作表当中。


    数据透视.png
  • 将省份放入列、市放入行、将市放入值并计数。


    调整字段位置.png
  • 点击设计菜单-选择总计类型为-对行和列禁用,请注意,此时只有把活动单元格选择为数据透视表中的位置,才会看到设计菜单
    取消总计.png
  • 将数据区域复制出来,找一个表格粘贴为值,并选中灰色区域。


    复制粘贴为值.png
  • 使用快捷键Ctrl+G选择定位条件或者开始菜单-查找和选择-定位条件,打开定位对话框,选择常量并确定。
    图片.png

    图片.png
  • 直接输入公式“=$a2”,在公式编辑状态下按,Ctrl+Enter(回车)批量填充,即可将省份下面填充对应的城市。
    图片.png

    图片.png
  • 全选数据,原地粘贴为值,并删除A列


    图片.png
  • 再次条件定位,选择空值并确定,将选中的部分删除且下方单元格上移,并将处理的结果粘贴到对应的区域。
    图片.png

    图片.png

    图片.png

    图片.png

    图片.png
区县分组设置

方法等同于对城市分组的设置,唯一不同的是,在数据透视时,将市放入列,县放入行,对县计数,其他步骤均一样。


图片.png

图片.png

最终效果

定义名称及区域

  • 定义名称及范围我们可以使用公式菜单下的-定义的名称组中的名称管理器,但使用名称管理器进行定义,只能手工一个一个加,无法做到批量完成。所以该方法我不再做详细的讲解,仅做了解即可,而名称管理器的功能不限于此,还有其他用法,这里不再累赘。

我们使用以下两种方式:
1、快捷键Ctrl+Shift+F3
2、公式菜单-定义的名称-根据所选内容创建

两种方法其效果是等价的,都可以打开下面的窗口


图片.png

根据所选内容创建/Ctrl+Shift+F3.png
  • 选中数据区域-并指定首行

    图片.png

  • 在定义城市部分的时候,为了增加效率和准确性,我们使用定位功能,定位常量,只选中我们需要定义的范围。

    图片.png

    图片.png

  • 对县级的设置也是一样。


    图片.png
  • 但是有时候会报错,原因参见点击查看详细原因

    图片.png

以上我们操作完了对数据区域名称的指定和区域的指定。在公式菜单-名称管理器,可以点击查看我们刚刚定义完的名称和区域,若后续有新增的项目,则需要在名称管理器中对应的分类下,修改应用的范围。


图片.png

图片.png

开始设置联动菜单

  • 先设置省份-打开数据菜单-数据有效性/数据验证-选择序列-在数据来源数据“=省级名称”指定的名称一定要和我们分组时指定的名称一致,否者无法返回正确的结果。确定以后点击单元格右侧的按钮就可以选择我们需要的省份了。所以建议在设置城市的时候,先随便选择一个省份,在设置区县的时候也需要随便先选择一个城市。
    图片.png

    图片.png
  • 我们再来设置城市,选中城市下面的单元格-同样打开数据有效性,输入下面的内容。


    图片.png

    图片.png
  • 这一步设置有时候会报错,原因就是你在设置城市的时候,省份没有选择任何值,但是你直接点击以后,你再回去先选好省份,那么城市这部分也就正常了。建议先随便选择一个上级的内容在对下一级进行操作。
    图片.png
  • 区县的设置等同于城市。


    图片.png

    至此就设置完毕了。

实现原理

其实现原理需要你对名称管理器INDIRECT函数熟悉,不做太多展开。简单来说说,INDIRECT函数可以根据你提供的单元格地址,比如INDIRECT("A2"),则结果会返回A2单元格的内容,表面上看和直接“=A2”是一样的效果,但其实现的原理有差别,而且INDIRECT的功能不仅如此,后续有需要再给大家详细讲解。而关于我们在写省一级的时候,选择序列后直接写了=省级名称,因为名称管理器定义过的我们都可以直接拿来使用,包括我们可以定义一些常用的公式或者特定的内容,也不再展开。我们在定义二级、三级的时候使用了INDIRECT(J12),其返回的结果是根据我们选择的省份,返回不同省份对应的城市,而这些关系我们在名称管理器中已经定义过了。如果你没有理解也没有关系,只要能做出来实现我们的目的暂时就足够了,以后随着学习的不断深入,你会慢慢理解的。

总结:

个人觉得,联动菜单的设置有几个关键点需要注意。
1、分组一定要明确,作为标题的名称不能有重复的;
2、如果你的菜单和子项比较多,那么需要借助一些方法去实现;
3、在我们指定名称的时候有时候会报错,(请确保粘贴和复制区域不要重叠),原因是由于Excel本身引起的,我们也可以通过一些方法避免掉。
4、在制作联动菜单时,有时候会提示源错误,那是因为你指定的上级的单元格没有内容,建议先随便选择一个内容后再做后面的操作。
5、学会联动菜单很重要,根据自己的能力选择合适自己的教程效果最好。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容