EXCEL级联下拉框

http://jingyan.baidu.com/article/3c343ff756e0cf0d377963f9.html

在输入一些多级项目时,如果输入前一级内容后,能够自动出现次一级内容,就会减少出错的机会并提高工作效率。

例如我们常用的费用科目有“管理费用”、“经营费用”、“财务费用”,这些属于一级科目,在它们的下面还有二级科目,比如“财务费用”的二级科目就包括“利息支出”、“手续费”等。

如果我们先输入“财务费用”后,希望有一个下拉框能列出只属于它的二级内容以供选择,就会方便很多,这就要用到“级联下拉框”了。

下面介绍制做方法:

第一步:准备工作表
先在一个工作簿中做两个工作表,一个名为“列表”,另一个名为“明细单”。

(提示:这只是一个例子,工作表的名子可以自取,如果放到一个工作表中也可以的)
下面要定义几个“名称”,以便在下拉框中调用。
第二步:定义名称
先定义“一级科目”的名称,选中“列表”中的A1:A4区域,按工具栏上的“插入-名称-定义”.
这时弹出一个对话框,如果与下图的设置一样,直接点“确定”按钮即可。
这样一级科目的名称就定义好了,以后只要引用这个名称,EXCEL就会返回实际的数据区域。
再根据一级科目中的项目,参照上面方法,分别定义它们的二级名称。
定义管理费用二级名称,选中列表的B2:F2区域,按“插入-名称-定义”
定义经营费用二级名称,选中“列表”的B3:E3区域,按“插入-名称-定义”
定义财务费用二级名称,选中“列表”的B4:C4区域,按“插入-名称-定义”
这样所有名称都定义好了,下面就可以用“数据有效性”来添加下拉框了。
第三步:添加数据有效性
打开“明细单”工作表,选中B5:B7区域,按工具栏上的“数据-有效性”
这时会弹出“数据有效性”对话框,在“设置”选项卡中按下图设置。
其中“来源”框中就是我们在上面定义的“一级科目”名称。
(注意:“来源”框中的等号一定要在英文状态下输入)
点“确定”后,一级科目的有效性下拉框设置完毕,下面再设置二级科目的下拉框,也就是我们在文章开头说的“级联下拉框”。
步骤类似,选中“明细单”的C5:C7区域,按“数据-有效性”,并按下面图片设置。
细心的朋友会发现,“来源”框中输入的并不是定义的二级科目名称,而是一个公式。
公式:=INDIRECT(B5)
公式含义:根据B5单元格中的内容,决定应用哪个二级科目名称。
这个公式中用到了INDIRECT函数,它的作用是返回由文本字符串指定的引用,其中括号中的B5就是它的引用字符串所在单元格。
比如B5单元格中的内容是“管理费用”,公式返回的结果就是“=管理费用”,就会在下拉框中应用上面定义的“管理费用”名称;如果B5单元格中的内容是“财务费用”,公式返回的结果就是“=财务费用”,就会在下拉框中应用上面定义的“财务费用”名称。
对话框设置完成后按“确定”按钮,这时会弹出下面一个“错误”对话框:
不用理会,直接点“是”即可。
第四步:使用
所有的设置完成后就可以使用了,点击“明细单”工作表的B5格就会出现一个向下的三角按钮,点这个按钮就会出现一个下拉框,从中可以选择一级科目。
再点C5格,同样也出现按钮,也有一个下拉框,这个下拉框中的内容会根据前一个下拉框的不同而改变。

EXCEL(1)级联下拉框的更多相关文章

  1. C# ,数据导出到带有级联下拉框的模板(一,模板的级联功能)

    一.首先解决如何做模板中增加级联功能 1,首先打开一个新的Excel文件,新增sheet,把分类保存在里面,如下图所示 2.回到sheet1,选中要增加下拉框的行(注意:请排除首行,首行是标题) 3. ...

  2. struts-hibernate-ajax完成区县和街道级联下拉框功能(二补充使用json解析list结果集,ajax循环json层级处理)

    针对<struts-hibernate-ajax完成区县和街道级联下拉框功能>进行补充,上一篇中,要在action中拼接JSON格式字符串,很容易手抖.直接用json处理一下转成json格 ...

  3. jQuery无限级联下拉框插件

    自己编写jQuery插件 之 无限级联下拉框   因为是级联,所以数据必须是树型结构的,我这里的测试数据如下: 看下效果图: 1.>图一: 2.>图二: 3.>图三: 由图可知,下拉 ...

  4. JQuery和ASP.NET分别实现级联下拉框效果

    在学习JQuery之前知道下拉框的级联效果可以通过asp.net控件实现,现在学习了JQuery,知道了JQuery和select也能实现.我分别举两个小例子说明这两种方法如何实现. 1.用JQuer ...

  5. js基于json的级联下拉框

    级联下拉列表是项目中常用到的.比如省市县,比如企业性质等,做成一个js通用组件, 在静态页出来后可以直接插入,将数据和html静态页做一个解耦. 贴出来抛砖引玉吧. /** * @author sun ...

  6. JS级联下拉框

    //Ajax级联获取SDKfunction GetDropDownList(parent_ddlID, fill_dllID, url, param) {    this.pId = parent_d ...

  7. 自动补齐flexselect+级联下拉框案例

    在开发web应用时,经常遇到类似省市区级联下拉框操作,即选中省份自动级联加载该省份所有的市,选中市自动级联加载该市所有的区:假设省市区的数据量很大,此时用户想选中某市,因而要从上往下查找,可能半天都找 ...

  8. EXCEL设置三级下拉框

    EXCEL设置三级下拉框 1.添加下拉框数据源 公式--->指定 公式--->名称管理器 2.设置第一级下拉框的值 3.第一级下拉框选出一个值 4.设置第二级下拉框(INDIRECT($A ...

  9. POI设置excel添加列下拉框

    POI在生成excel模板时需要为列添加下拉框,我写了两个方法. @ 方法一:适用任何情况,不受下拉框值数量限制.但是需要通过引用其它列值. 思路大概如下: 1.创建一个隐藏的sheet页,用于存放下 ...

随机推荐

  1. asp.net网页上获取其中表格中的数据(爬数据)

    下面的方法获取页面中表格数据,每个页面不相同,获取的方式(主要是正则表达式)不一样,只是提供方法参考.大神勿喷,刚使用了,就记下来了. 其中数据怎么存,主要就看着怎么使用了.只是方便记录就都放在lis ...

  2. 宋宝华:关于Ftrace的一个完整案例【转】

    Ftrace简介 Ftrace是Linux进行代码级实践分析最有效的工具之一,比如我们进行一个系统调用,出来的时间过长,我们想知道时间花哪里去了,利用Ftrace就可以追踪到一级级的时间分布. Ftr ...

  3. Codechef Bear and Clique Distances

    题目:Bear and Clique Distances 描述:共有N个点,前1—K个点任意两点之间有一条无向边,边的权值为X,再任意给M条边(u,v,w)(不重复),求任意一点到其余各点的最短路. ...

  4. ES6 快速入门

    ES6 初识 ES6 是 ECMAScript 6.0 的简写,即 JavaScript 语言的下一代标准,已经在 2015年6月正式发布了,它的目标是让JS能够方便的开发企业级大型应用程序,因此,E ...

  5. Redis操作集合,有序集合

    Set操作,Set集合就是不允许重复的列表 sadd(name,values) 1 # name对应的集合中添加元素 scard(name) 1 获取name对应的集合中元素个数 sdiff(keys ...

  6. Dispatch Group

    Dispatch Group A group of tasks that you monitor as a single unit. Overview Groups allow you to aggr ...

  7. 【js】this问题

    var obj = { a: 10, b: () => { console.log(this.a); // undefined console.log(this); // Window {pos ...

  8. DeeplabV3+ 训练自己的遥感数据

    一.预处理数据部分 1.创建 tfrecord(修改 deeplab\ dateasets\ build_data.py) 模型本身是把一张张 jpg 和 png 格式图片读到一个 Example 里 ...

  9. 在Mac OS X中完善PHP环境:memcache、mcrypt、igbinary

    本文环境: Mac OS X 10.8.5 Xcode 5.0 Mac OS X升级到10.8.5之后,内置的Apache升级到2.2.24,PHP升级到了5.3.26.本文以此环境为基础. 本文简介 ...

  10. Lepus搭建企业级数据库全方位监控系统

    前言 Lepus(天兔)数据库企业监控系统是一套由专业DBA针对互联网企业开发的一款专业.强大的企业数据库监控管理系统,企业通过Lepus可以对数据库的实时健康和各种性能指标进行全方位的监控.目前已经 ...