Excel2007
Excel2007操作类库
发布一个最近完成的Excel2007操作类库,可以在没有安装Office的机器上快速读写和操作Excel2007格式文件,不过还是需要.net framework2.0 :)。生成效率比较高,写入10000行50列的数据只需12秒,如果数据是纯数字还会更快,我的机器Pentium M 1.8G CPU 1.25G Memory。Office2007中的Excel,Word,PowedPoint使用了OpenXml文件格式,文件是一个标准的zip压缩包,只需要简单的将文件的扩展名更改为.zip,就能看到其内部的具体内容,大部分是标准的xml文件,所以类库主要的任务就是操作xml。Excel2007的操作类库目前已经有人写过了如:ExcelPackage,最初因为项目需要也曾经改造过改类库,试图将之封装成可以结合报表数据分析工具的Excel2007报表生成工具,但是ExcelPackage内部的操作全部基于XmlDocument,效率低,生成简单的报表还可以,数据量稍微有点大就处理不过来了。开始研究怎么样才能提高效率的时候,思索了一阵子,基于XmlDocument的操作,涉及了XPath等操作都是基于文档的,许多XPath的查询都是需要遍历文档的,即使再怎么优化XPath也不能提高太多的效率。后面老大提醒了我,应该把所有XML的操作都放到内存当中去做,把Excel文件中的XML文档内容映射到内存中的自定义对象,在操作完成后再将内存中的对象写回zip压缩包中去。没错就是这个思路...编写这个类库的时候使用了System.IO.Packaging这个名称空间,该空间内提供了一些对zip文件的操作类,该空间位于WindowsBase.dll中,是一个.net3.x的库,其实还有一个可以实现和System.IO.Pacakaging类似功能的类库SharpZipLib,只是之前在编写Excel2007操作类库的时候还不知道,暂且从已经安装了.net3.x的同事那拷贝了WindwsBase.dll过来用,还好能顺利的在VS2005中引用且能正常使用。此类库目前已经结合一个报表数据分析引擎,在一个中型Web系统中实现Excel2007报表的功能。
如何在Excel中用快捷键绘制边框
在只能使用键盘的情况下,怎样在Excel中给某个区域绘制边框呢?如果只需绘制细实线型的外侧边框,用快捷键“Ctrl+Shift+&”即可,取消各种类型的边框则用“Ctrl+Shift+_”。对于其他类型的边框,Excel并没有提供直接的快捷键。但在“设置单元格格式”对话框的“边框”选项卡中,可以用Alt+字母键的方式来绘制边框。方法如下: 1.选择某个区域后,按快捷键“Ctrl+1”打开“设置单元格格式”对话框,如果“边框”选项卡未被选择,则按左右箭头键切换到“边框”选项卡。 2.在对话框中可以看到个功能区命令旁的括号中都有一个字母,按Alt+字母即可执行相应的命令或激活某区域。例如“Alt+C”选择颜色,“Alt+I”内部边框、“Alt+N”取消边框等。也可按Tab键依次在对话框内各控件中切换。 另外,下面几种类型的边框所对应的快捷键如下: Alt+T:绘制或取消上边框 Alt+B:绘制或取消下边框 Alt+L:绘制或取消左边框 Alt+R:绘制或取消右边框 Alt+H:绘制或取消内部水平框线
excel利用条件格式图标集直观显示多个项目完成情况
Excel 2007和Excel 2010的图标集是Excel新增的条件格式之一,它可以在符合条件的单元格中显示指定的图标,从而使单元格数据看上去非常醒目。例如下图的D列统计了一些工程项目的完成情况,仅用文字描述显得不够直观。 而如果在D列应用条件格式,如图标集,项目的完成情况就会一目了然。 这种图标集的设置方法是,先根据开始和结束日期,在D列中用公式返回相应的数值,再设置图标集条件格式,最后用自定义单元格格式显示文字。以Excel 2010为例,步骤如下: 1.将文本转换为数值 由于无法直接对文本设置图标集条件格式,可先将文本转换为数值。在D2单元格中输入公式: =IF(B2>TODAY(),-1,IF(C2>=TODAY(),0,1)) 然后填充公式到D3:D11区域,这样将文字转换为数值。“已完成”对应数值“1”,“进行中”对应数值“0”,“未开始”对应数值“-1”。也可用其他函数(如VLOOKUP)或手动对应输入数值。
excel利用VBA创建新的工作簿
如果要用VBA创建新的工作簿,可以使用Add方法,如下面的代码。Excel自动将该工作簿命名为“BookN”,其中“N”是下一个可用的数字,同时新工作簿将成为活动工作簿。Sub AddOne() Workbooks.Add End Sub另外,创建新工作簿更好的方法是将其分配给一个对象变量。例如下例中,由Add方法返回的Workbook对象分配给了对象变量“NewBook”。然后,又设置了“NewBook ”的若干属性。Sub AddNew() Set NewBook = Workbooks.Add With NewBook .Title = "图书销售目录一览表" .Subject = "图书销售" End With End Sub“Title”和“Subject”分别为工作簿的“标题”和“主题”属性,可以在工作簿属性的“摘要”选项卡中查看。下面的代码不仅创建了一个新工作簿的同时,还在工作簿中的第一个工作表前插入了一个名为“计算机类”的工作表,并将该工作表中的B2单元格赋值为“销售数量”。Sub CreateNewWorkBook() Dim WBook As Workbook, WSheet As Worksheet Set WBook = Workbooks.Add Set WSheet = WBook.Worksheets.Add WSheet.Name = "计算机类" WSheet.Range("B2").Value = "销售数量" End Sub
excel中自定义填充数据的基础步骤
excel可以自动填充相同的数据和有规律的数据,当然在excel中我们还可以自定填充数据,如一等差序列、等比序列或者以日期的类型进行填充等,下面就来详细的了解下excel中自定义填充数据的基础步骤吧。 1、打开一个excel空白工作表,在A1单元格输入数据1,然后选中这个单元格,单击“开始”选项卡下的“编辑”组中的“填充”下拉按钮,在弹出的下拉面板中选择“系列”选项,如图1所示。图1 2、在弹出的“序列”对话框,在“序列产生在”选项区中选中“列”单击按钮,在“类型”选项区中选中“等差序列”单选按钮,在“步长值”文本框中输入3,在“终止值”文本框中输入15,设置完成后,点击“确定”按钮,如图2所示。图2 3、返回到excel工作表中,我们就可以看到,A1:A5单元格区域中自动填充了数据,如图3所示。图3
怎样将Excel工作簿标记为最终状态?
Excel工作簿编辑完成后,如果需要给其他用户查看,为避免他人无意间修改工作簿,在双方都使用Excel 2007或Excel 2010的情况下,可以将工作簿标记为最终状态,这样,其他用户在Excel 2007或Excel 2010中打开工作簿后,功能区中的编辑命令都不可使用,同时也不能在工作表中输入数据。设置方法如下 Excel 2007: 单击“Office按钮→准备→标记为最终状态”,Excel会弹出两次对话框,分别单击“确定”。 在Excel 2007中打开已标记为最终状态的工作簿后,在状态栏中会显示一个“标记为最终状态”的图标。 “标记为最终状态”并非一项安全功能,因为用户可以随时取消该标记并对工作簿进行编辑。要取消最终状态重新开始对工作簿进行编辑,单击“Office按钮→准备→标记为最终状态”即可。 Excel 2010: 单击“文件→信息→保护工作簿→标记为最终状态”,在两次弹出的对话框中单击“确定”。 在Excel 2010中打开已标记为最终状态的工作簿后,除了在状态栏中会显示一个“标记为最终状态”的图标,还会显示“标记为最终版本”的提示信息。单击“仍然编辑”按钮即可继续进行编辑。
Excel中增强的图标集条件格式功能使用教程
从Excel 2007开始,Excel条件格式中增加了数据条、色阶、图标集等新功能,可以非常直观地查看和分析数据。Excel 2010则进一步增强或改进了这些条件格式功能,使用起来更加方便了。下面是Excel 2010中图标集条件格式增强或改进的几个功能。 一、增加了3种图标样式 Excel 2007中的图标集有17中图标样式,Excel 2010又新增的3种图标样式,分别是“3个三角形”、“3个等级”和“5个框”。并且进一步细分了类别,如“方向”、“形状”、“标记”等。 下图为Excel 2007中的图标集样式: 这是Excel 2010中图标集样式,蓝色框线标记了新增样式: 二、在对话框中选择图标样式更直观 如果要通过“编辑格式规则”对话框来修改图标集条件格式,可以看到在该对话框中选择图标集样式时,Excel 2010直观地显示了各种样式,而不是Excel 2007中的图标样式名称。
Excel打开出现乱码的解法方法
excel出现乱码的原因也是多种多样。如果你遇到excel打开是乱码,可以从下面找找相应的解决办法。1、2003excel打开是乱码乱码解决步骤1:Excel 打开一个csv格式的文档,出现乱码乱码解决步骤2:有乱码的 CSV 档透过记事本的方式开启乱码解决步骤3:用记事本打开后,开到的也是一堆乱码,单击“档案”---“另存为”乱码解决步骤4:在弹出的保存对话框中选择“ANSI"格式乱码解决步骤5:设置完成,将文件保存再用excel 打开。可以看到,文档能够正常的显示了2、2007excel打开是乱码打开乱码解决步骤1:打开word,单击【文件】菜单中的【打开】命令
如何在Excel中一键创建数据透视图
要在Excel中创建数据透视图,如果已创建了数据透视表,使用快捷键更为方便。方法是选择数据透视表中的某个单元格,然后按快捷键 F11 或 Alt+F1 ,Excel将按照默认的图表类型插入数据透视图。这两个快捷键在Excel 2007/2010中有所不同,按 F11 将在工作簿中插入一个包含数据透视图的图表工作表,而按 Alt+F1 则会在当前工作表中插入一个嵌入式数据透视图。
Excel怎样高亮显示区域中最大的几个值?
要高亮显示某个区域中最大的几个值,在Excel中可以利用条件格式来设置颜色。假如数据在A1:C12区域中,要给其中最大的3个值设置某种颜色,方法如下: Excel 2003: 选择数据区域A1:C12,单击菜单“格式→条件格式”,弹出“条件格式”对话框。在中间的下拉列表中选择“大于或等于”,在右侧的文本框中输入公式: =LARGE($A$1:$C$12,3) 然后单击“格式”按钮,在“单元格格式”对话框中设置某种单元格格式。 单击“确定”完成设置。 Excel 2007/2010: 在Excel 2007/2010中无需输入公式,直接设置条件格式即可。