手机版

湛师人 | 岭南师范学院(原湛江师范学院)BBS论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1355|回复: 0
打印 上一主题 下一主题

Excel中级联菜单的实现

[复制链接]

签到天数: 6 天

[LV.2]偶尔看看I

跳转到指定楼层
1#楼
发表于 2010.9.2 13:05:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家知道,在Excel中可以通过设置数据的有效性来实现类似于网页表单中的下拉菜单功能,这样可以大大地提高数据的录入速度和可靠性。但采用此方法要求下拉菜单中的选项不能过多,否则会影响录入的速度。如果这些选项内容之间可进行分类、分组,那我们就可以用多个下拉选项(即级联菜单)来解决此类问题。下面我们就从一个实例出发,给出在Excel中实现级联菜单的两种方法,希望能给使用Excel进行办公的朋友提供帮助。

  一、自定义数据的有效性

  这里有两个工作表,其中Sheet1用来采集客户资料,并将其名称改为“客户数据采集”,在Sheet2的A列中保存了所有的省份, B列中的数据为各省份所属的县市并将工作表名称改为“地区”(假设这里设置了三个省份,即江苏省、浙江省和安徽省)。

  1. 定义单元格区域名称

  选中“地区”表中江苏省所属县市的单元格区域B2∶B14,依次单击“插入”菜单中的“名称”,选择“定义”,弹出“定义名称”对话框,在“在当前工作簿中的名称”框中输入所定义的名称“江苏”,单击“确定”按钮。类似地,我们可以将浙江省和安徽省所属县市的单元格区域名称分别定义为“浙江”和“安徽”。

  2. 设置数据的有效性

  切换到“用户数据采集”表中,选择要选择输入省份的D列,单击“数据”菜单中的“有效性”命令,弹出设置“数据有效性”对话框,在有效性条件的“允许”列表中选择“序列”,在“来源”框中输入“江苏,浙江,安徽”(分隔符为英文状态下的逗号),单击“确定”按钮。接下来选中“所属县市”所在的E列,再次打开“数据有效性”对话框,在有效性条件的“允许”列表中选择“序列”,在“来源”框中输入公式“=INDIRECT(D2)”,单击“确定”按钮

  Cico提示:在关闭设置E列数据有效性对话框时,如系统弹出警告提示“源目前包含错误,是否继续?”,只需确认就可以了。如果指定的D2单元格中已经选择了一个省份再设置E列数据的有效性就不会出现此提示了。

  3. 数据录入

  录入客户资料时,首先选择客户所在的省份,然后再打开其右侧“所属县市”所在的单元格时,我们就可以从下拉菜单中找到我们所需的选项了。

  二、用组合框工具实现

  该方法是借助控件工具箱和VBA代码来实现的。

  1. 设计组合框

  在工作表Sheet1中我们借助“控件工具箱”设计了录入界面,将工作表名称改为“客户数据采集”,在采集客户的所属地区时我们设计了两个组合框,第一个组合框ComboBox1用来存放省份,第二个组合ComboBox2用来存放对应于第一个组合框的下属的县市。Sheet2(“地区”表)仍保留和原来一样的内容。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 顶 踩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

使用帮助
1.发帖导航 2.帮助文档 3.账号密码 4.广告业务 5.社团合作 6.联系我们 举报 | 报错

版权声明
免责声明
关于本站
联系我们
业务合作
Archiver
举报

Copyright © 湛师人论坛 zhanshiren.com 2008-2013 All Rights Reserved. 版权所有 ( 粤ICP备09028485号

Powered by Discuz! X3.1 © Comsenz Inc. GMT+8, 2024.5.3 05:49   

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