分享

Excel 添加多级下拉菜单

 JT_man 2014-08-26

有时我们需要在 Excel 的单元格中添加一个下拉菜单来辅助输入数据,而不是一个个的用手工输入,这样可以大大的提高效率。这时很多朋友可能就想到了用 ActiveX 控件的组合框控件来实现,但是这样会带来一些问题,比如宏安全性等问题。其实最直接的实现方法就是利用数据有效性来实现下拉菜单,方便又快捷,副作用又少。

  

一、怎样添加一个简单的下拉菜单

 

下面我们就来说明一下怎样在单元格中添加一个简单的下拉菜单。如图,我们需要在 B3:B22 中添加一个包含  四川省、河南省、湖南省 的下拉菜单

20140818092628

  

只需要选中 B3:B22 ,然后点击 数据 标签 -- 数据工具 组 -- 数据有效性 工具 调出 数据有效性 对话框,在 数据有效性 - 设置 - 有效条件 - 序列 - 来源 编辑框中输入 四川省,河南省,湖南省(也可以引用包含这些数据的单元格区域),然后点击 确定 按钮即可:

20140818092538

  

 二、添加多级联动菜单

 

上面我们讲了怎样添加一个简单的下拉菜单,但很多时候我们所需要的不仅于此,我们还需要在表格中根据省份来输入 市,根据 市 来输入 县区。

如图,我们希望在 省份 列输入省份后,可以在 这一列有一个隶属这个省份的市的下拉列表,同样我们也希望在输入市以后在 县/区 这一列有一个隶属于这个市的县/区的列表, 这就需要一个添加一个多级的联动菜单

20140818094845

  

下面我们就以下图数据为例,来具体地讲一讲多级联动菜单的制作

20140818100006

  

1、准备好需要制作下拉菜单需要的数据,为每一部分定义名称.

 

我们将源数据储存在另一张工作表中,然后将包含省区的区域(B2:D2)定义为 省区;将隶属于河南省的市的区域(B3:B5)定义为 河南省;将隶属于洛阳市的县的区域(F3:F5)定义为 洛阳市。以此类推,创建好的名称如图:

20140818100923

 
这里有个小技巧,以所列数据为例,我们不需要单独为每个市选定区域来创建名称,我们只需要选中 F2:M5 区域,然后点击 公式 标签 -- 定义的名称 -- 根据所选内容创建 功能,然后选择 首行 复选框,点击 确定 按钮就可以自动的创建出市级的名称:

20140818101630

 

2、使用数据有效性来设定一级下拉菜单

 

选中需要输入省区的单元格区域(B3:B16), 点击 数据 标签 -- 数据工具 组 -- 数据有效性 工具 调出 数据有效性 功能,在 数据有效性 - 设置 - 有效条件 - 序列 - 来源 编辑框中输入 =省区,如图:

20140818102742

  

然后点击确定按钮。这样一操作就完成了一级菜单的设置,如图:

20140818103204

  

3、使用数据有效性来设定二级下拉菜单

 

我们做好了一级菜单,这里就需要根据一级菜单来制作二级菜单了。选中需要输入市的单元格区域(C3:C16), 点击 数据 标签 -- 数据工具 组 -- 数据有效性 工具 调出 数据有效性 功能,在 数据有效性 - 设置 - 有效条件 - 序列 - 来源 编辑框中输入 =INDIRECT($B3), 如图(注意这里的单元格引用需要使用列绝对行相对类型的混合引用):

20140818104620

然后点击确定按钮即可。到现在为止,二级菜单也设置好了:

20140818104741

  

 4、使用数据有效性来设定三级下拉菜单

 

和设置二级菜单同样的操作,我们来设置三级菜单。选中需要输入 县/区 的单元格区域(D3:D16),  点击 数据 标签 -- 数据工具 组 -- 数据有效性 工具 调出 数据有效性 功能,在 数据有效性 - 设置 - 有效条件 - 序列 - 来源 编辑框中输入 =INDIRECT($C3), 如图(注意这里的单元格引用需要使用列绝对行相对类型的混合引用), 点击确定按钮即完成三级菜单的设置:

20140818105313

  

经过以上的操作,我们的三级联动菜单就完成了,你只要在省区中选择相应的省份,市这一列的菜单就会变为相对应的市,县/区这里也一样。

20140818111227

 

以上只是制作多级菜单方法的一种,有时间我们再整理一下其他的方法来介绍给大家。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多