全面认识Excel 2007的新文件格式
全面认识Excel 2007的新文件格式
看看Excel2007工作簿文件
一个Excel2007文件就是一个压缩了的容器,其中包含着一些文件和文件夹。要查看这些文件和文件夹,只需将Excel2007的文件扩展名改为.zip或者.rar,即压缩文件的扩展名,也可以直接在Excel2007文件的扩展名后添加.zip或者.rar
新建一个Excel2007工作簿,将该工作簿命名为test1.xlsx,然后关闭该工作簿。按上面的方法在该工作簿文件名后加上扩展名.zip,重命名该工作簿。
  1:重命名该工作簿
  2:加上压缩文件的扩展名
双击该工作簿文件,可以看到这个Excel2007文件的XML文件包结构如下:
 
3Excel2007.xlsx文件的内容
此时,打开名为“xl”的文件夹,其包含的内容为:
 
4“xl”文件夹中的内容,如果工作簿中有vb工程,则会出现相应的二进制文件
l文件包含的内容如下:
 
5“l”文件,可直接在文件名上双击打开
在这里,可以看到各工作表对应的id号,即r:id。如果想操作某工作表,则先到其r:id。例如,工作表“Sheet3”r:idrId3
在图4中的文件夹“_rels”里,有一个名为“ls”的文件,包含着周亭羽xml的代码片断:
 
6“ls”文件表明工作表中有哪些文件
读取单元格的值
工作表“Sheet3”中的内容为:
 
7:工作表Sheet3中的内容
l文件为:
 
8l中国有几个诺贝尔奖,显示了单元格A1A2企业宣传标语A3
但是,如何知道单元格A1中的内容呢?看上面的内容:<c r=”A1” t=”s”>,可知单元格A1中包含有一个字符串;下一行:<v>0</v>,告诉需要在“l”文件中到第0项。“l”文件顶部的内容为:
 
表明在该工作簿中只有1个独立的字符串。注意,索引值是以0为基数开始的。上面的内容告诉需要查的索引号为0,即该XML文件最开始的部分:
 
9
在单元格中添加文本
现在,如果想在工作表Sheet3中添加新的文本新的课目
首先,修改“l”文件的顶部内容:
 
圣诞节寄语修改为:

 然后,在文件中添加新的字符串:
 
接着,将“l”文件打开,并添加下面的内容(所选取的部分)
 
现在,恢复工作簿扩展名并重新打开该工作簿后,如下所示:
 
10:编辑xml文件后的结果
注:可以将压缩文件夹中要编辑的文件拖拉出来,用记事本或xml汤灿死了吗编辑器进行编辑并保存后,再将该文件拖回压缩文件夹中。
在单元格中添加数字
在单元格中添加数字与添加文本相似,但稍有不同。数字是直接保存在工作表xml文件中,并且可以添加数字格式。
例如,在前面的l文件中,数字单元格的格式为常规,并没有设置专门的格式。
单元格格式通过索引值来引用,如:
 
在单元格A3中显示的是日期。索引值1指向文件包中的另一个文件:l。单元格格式通过名为“cellXfs”的节点设置引用,在工作表xml文件中的s=”1”指向节点中的某一元素。素引值以0开始,因此索引值为1表示是第2项:
 
单元格格式交叉引用依次引用numFormatId列表、FontId列表、fillId列表和borderId列表,这些都包含在l文件中。
因此,不能直接添加格式化的单元格到工作表中,必须检查是否指定的单元格格式组合已在单元格格式交叉引用中(l文件),这要分别检查所有单个的格式引用。同时,如果格式组合是新的,则必须使用新格式扩展格式元素列表,并更新格式交叉引用。这些列
表的所有“Count”的参数都需要更新。
改变窗体控件的属性
通常,窗体控件与控件工具箱中的控件不同,其外观、字体、颜等属性不能改变。下面,使用工作簿的文件包来更改这些属性。
例如,工作簿FormControls.xlsx的工作表Sheet1如下:

11:包含一些窗体控件的工作表
现在,来分析这些窗体控件存放的位置。将工作簿FormControls.xlsx重命名为断桥铝合金FormControls.zip,然后打开文件夹“xl”“Worksheets”。打开“l”文件,可以看到
有下面的内容(阴影部分)
 
上面加亮显示的内容指向窗体控件文件。要到“rId2”,打开“_rels”文件夹,如图12所示:
 
12
打开“ls”文件,查rId2
 
在这里,可以看出应该查文件“../drawings/vmlDrawing1.vml”
每个工作表的.vml文件都包含着控件或者在该文件中能捕捉到的其它对象。
vmlDrawing1.vml文件拖到桌面上,然后打开它进行编辑。窗体控件中复选框的字体是不能编辑的,但该文件的内容展示了复选框的xml部分,现在来改变这个复选框中的字体。
 
将上面的内容:
<font face="宋体" size="180" color="auto">复选框 3</font>
改为:

<font face="Arial Black" size="320" color="auto">复选框 3</font>
保存并关闭该vml文件,然将其拖放到压缩文件夹中的Drawings文件夹中,再将FormControls.zip改为FormControls.xlsx,打开该工作簿,则复选框显示如下:
 13:修改字体后的复选框
从这个vml文件中,也可以看出关于控件的其它信息,例如位置,即Anchor。因此,可以通过vml文件改变控件的位置。
也可以更改复选框字体的颜,如将内容:
<font face="Arial Black" size="320" color="auto">复选框 3</font>
改为:
<font face="Arial Black" size="320" color="#FF0066">复选框 3</font>
保存该vml文件并拖放至相应的压缩文件夹,然后将.zip文件改回.xlsx文件,打开工作簿后的复选框显示如下:
13:修改字体和颜后的复选框
通过上面的介绍,大家可以寻并更改这些xml文件中的其它内容,以实现不同的处理。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。