excel下拉菜单制作方法汇总.doc_第1页
excel下拉菜单制作方法汇总.doc_第2页
excel下拉菜单制作方法汇总.doc_第3页
excel下拉菜单制作方法汇总.doc_第4页
excel下拉菜单制作方法汇总.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

excel下拉菜单制作方法汇总Excel下拉列表通常都是利用“数据有效性”来实现的,通过“数据有效性”设置,可以让Execl的某一单元格出现下来菜单的效果,那么如何实现excel下拉列表呢?Excel下拉列表、Excel下拉菜单的第一种方法(数据有效性):第一步:打开Excel工作薄选定某一单元格点击上方的“数据(D)”菜单点击“有效性(L)”;第二步:将弹出“数据有效性”窗口,在“设置”选项卡中“有效性条件”下方找到“允许(A)”,将其设置为“序列”然后再将“忽略空值(B)”和“提供下拉箭头(I)”两项前面打上勾;第三步:最后在“来源(S)”中,输入您需要的菜单选项数据,比如,需要设置1、2、3为下拉菜单中的可选项,就在“来源(S)”下方输入“1,2,3”,每一组数据之间必须以英文标点的逗号“,”隔开,不能用中文全角的逗号“,”最后点击“确定”退出即可;补充说明:在“来源(S)”中还可以直接引用某些单元格内的数据作为下拉菜单的可选项,只需要在“来源(S)”下方输入一串代码即可,比如,想要让第一列的单元格A1至A5中的数据作为可选项,就在“来源(S)”下方输入“=$A$1:$A$5”(不含引号,且必须使用英文符号和标点);Excel下拉列表、Excel下拉菜单的第二种方法(自动生成可选项的范围):第一步:首先定义可选项数据的范围,也就是说出现在下拉菜单中的选项是哪些数据,这个范围只能是某一行或某一列;使用鼠标框选某一行或某一列的数据然后点击上方的“插入”菜单点击“名称(N)”选择“自定义(D)”;第二步:将弹出的“自定义名称”窗口,在“在当前工作薄中的名称(W)”下输入“dw”点击右边的“添加”点击“确定”退出;第三步:选中要设置Excel下拉列表的单元格后点击“有效性”在“设置”选项卡中,将“允许(A)”设置为“序列”在“来源(S)”下输入“=dw”(不含引号)点击“确定”即可;Excel下拉列表、Excel下拉菜单的第三种方法(筛选):利用“筛选”功能自动生成Excel下拉选项,采用此方法会将Excel工作薄的某一列中的所有数据都作为下拉菜单中的可选项;第一步:打开Excel工作薄用鼠标框选住需要设置Excel下拉选项的某一行内容(如,单位名称、产品名称、日期、数量这一行);第二步:然后点击上方的“数据(D)”菜单点击“筛选”选择“自动筛选”;采用“自动筛选”方法生产的Excel下拉列表、Excel下拉菜单、Excel下拉选项,会将整个一列的数据都作为可选项被使用;实例:有如下一份省市数据:省份以及省份所辖地市清单,需要实现多级联动下拉菜单操作,具体操作方式如下所示:第一步:对各单元格区域进行名称定义选中A1:A5单元格区域,然后公式根据所选内容创建如图设置PS:分别对B、C、D、E列重复以上操作第二步:设置省份列的选项选中G1:G22单元格区域,然后数据数据有效性弹出数据有效性设置窗口,然后如图设置其中来源“=省份”,这里的省份与之前自定义的单元格区域名称是相对应的省份选项搞定第三步:设置地市列的选项选中H1:H22单元格区域,然后数据数据有效性在弹出的窗口,设置如下其中来源=indirect($G1)PS:indirect函数,返回由文本字符串指定的引用。地市选项也搞定了,N级操作以此类推同样,利用NPOI代码也可以实现上面的效果:HSSFSheet sheet1 = hssfworkbook.CreateSheet(Sheet1);CellRangeAddressList regions = new CellRangeAddressList(0, 65535, 0, 0);DVConstraint constraint = DVConstraint.CreateExplicitListConstraint(new string itemA, itemB, itemC );HSSFDataValidation dataValidate = new HSSFDataValidation(regions, constraint);sheet1.AddValidationData(dataValidate);下面对代码作一下简要说明:先设置一个需要提供下拉的区域,关于CellRangeAddressList构造函数参数的说明请参见上一节:CellRangeAddressList regions = new CellRangeAddressList(0, 65535, 0, 0);然后将下拉项作为一个数组传给CreateExplicitListConstraint作为参数创建一个约束,根据要控制的区域和约束创建数据有效性就可以了。但是这样会有一个问题:Excel中允许输入的序列来源长度最大为255个字符,也就是说当下拉项的总字符串长度超过255是将会出错。那么如果下拉项很多的情况下应该怎么处理呢?答案是通过引用的方式。步骤如下:先创建一个Sheet专门用于存储下拉项的值,并将各下拉项的值写入其中:HSSFSheet sheet2 = hssfworkbook.CreateSheet(ShtDictionary);sheet2.CreateRow(0).CreateCell(0).SetCellValue(itemA);sheet2.CreateRow(1).CreateCell(0).SetCellValue(itemB);sheet2.CreateRow(2).CreateCell(0).SetCellValue(itemC);然后定义一个名称,指向刚才创建的下拉项的区域:HSSFName range = hssfworkbook.CreateName();range.Reference = ShtDictionary!$A1:$A3;range.NameName = dicRange;最后,设置数据约束时指向这个名称而不是字符数组:HSSFSheet sheet1 = hssfworkbook.CreateSheet(Sheet1);CellRangeAddressList regions = new CellRangeAddressList(0, 65535, 0, 0);DVConstraint constraint = DVConstraint.CreateFormulaLis

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论