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. C# Math的说有函数 以及说明

    Math.Abs(x)                                      x绝对值 Math.Acos(x)                                  ...

  2. 启动期间的内存管理之pagging_init初始化分页机制--Linux内存管理(十四)

    1 今日内容(分页机制初始化) 在初始化内存的结点和内存区域之前, 内核先通过pagging_init初始化了内核的分页机制. 在分页机制完成后, 才会开始初始化系统的内存数据结构(包括内存节点数据和 ...

  3. netcat的简单使用(一)

    简单写一下netcat这个强悍的工具,主要是怕自己忘了 功能大致这些个,有遗漏的欢迎私信补充 1.侦听模式/传输模式 2.telnet/获取banner信息 3.传输文本信息 4.传输文件/目录 5. ...

  4. windows 为qt5.7.1 安装openssl

    本人使用qt5.7.1+msvc2015写一个https的客户端程序,但是用到解析https协议时,报出如下错误 qt.network.ssl: QSslSocket: cannot call unr ...

  5. SQLServer之添加聚集索引

    聚集索引添加规则 聚集索引按下列方式实现 PRIMARY KEY 和 UNIQUE 约束 在创建 PRIMARY KEY 约束时,如果不存在该表的聚集索引且未指定唯一非聚集索引,则将自动对一列或多列创 ...

  6. 戏说春秋_i春秋 writeup

    <戏说春秋>第一关 图穷匕见 题目: 解:用winhex打开,拉到最后可发现一段编码 放到解密网站上解码. <戏说春秋>第二关 纸上谈兵 解:文中没有明确指出问题,也没有给出线 ...

  7. python离线安装包

    一.用download命令离线下载包  *.whl , 这个方法好像python3.7以上才能用 那么我的requirement.txt内容就是: django==1.8.11 simplejson= ...

  8. Python开发【第一篇】基础题目二

    1 列表题 l1 = [11, 22, 33] l2 = [22, 33, 44] # a. 获取l1 中有,l2中没有的元素 for i in l1: if i not in l2: # b. 获取 ...

  9. bsp 总结正规流程

    1. do boot 之类下载boot的都是将 uboot.bin里的内容下载到flash 0x0位置 => nand dump 0x0Page 00000000 dump: 14 00 00 ...

  10. Apache Flink中的广播状态实用指南

    感谢英文原文作者:https://data-artisans.com/blog/a-practical-guide-to-broadcast-state-in-apache-flink 不过,原文最近 ...