包括以下工作簿和工作表:
Excel2007以XML格式保存。将excel文件后缀设置为.通过更改为zip,您可以立即查看与excel文件相对应的XML格式的文件。
如下图所示:
1 _rels\.rels文件内容
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns=";><Relationship Id="rId3" Type="; Target="docPro;/><Relationship Id="rId2" Type="; Target="docPro;/><Relationship Id="rId1" Type="; Target="xl;/></Relationships>
如果要自定义功能区,需要新建cutomUI文件和文件夹加入到压缩文件夹,然后在上述标签内建立文件之间的联系。
2 文件夹docProps下有两个文件
a
core.xml
这里core是文件的创建时间和修改时间,标题,主题和作者。
app是文档的其他属性,文档类型、版本、是否只读、是否共享、安全属性等文档属性信息。
3 在xl目录下是文档的具体内容信息
文件夹xl下文件内容:
3.1 xl\workbook.xml文件内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<workbook xmlns="; xmlns:r=";><fileVersion appName="xl" lastEdited="4" lowestEdited="4" rupBuild="4505"/><workbookPr defaultThemeVersion="124226"/><bookViews><workbookView xWindow="96" yWindow="72" windowWidth="15288" windowHeight="6168"/></bookViews><sheets><sheet name="Sheet1" sheetId="1" r:id="rId1"/>
<sheet name="Sheet2" sheetId="2" r:id="rId2"/>
<sheet name="Sheet3" sheetId="3" r:id="rId3"/>
</sheets>
<calcPr calcId="124519"/></workbook>
workbook.xml文件包含一对<sheets>标签,其中的每个<sheet>元素都代表Excel 2007文件中的一个,工作表的名称就是其name属性的值,这里有三个sheet。
3.2 文件内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<sst xmlns="; count="3" uniqueCount="3">
<si><t>B2单元格</t><phoneticPr fontId="1" type="noConversion"/></si>
<si><t>B3单元格</t></si>
<si><t>B4单元格</t></si></sst>
在工作簿中,各工作簿使用的字符串统一存放在以上文件中,每组字符串使用元素<si>表示,其排列顺序就是其序号,表示工作表数据的XML文件用该序号来引用字符串。
3.3 样式文件是当前单元格的样式字体,颜色等样式的xml配置。
3.4 Theme存放的是当前的设置导航栏的默认样式。
3.5 xl\_rels\workbook.xml.rels文件的内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns=";><Relationship Id="rId3" Type="; Target="workshee;/>
<Relationship Id="rId2" Type="; Target="workshee;/>
<Relationship Id="rId1" Type="; Target="workshee;/>
<Relationship Id="rId6" Type="; Target=";/><Relationship Id="rId5" Type="; Target=";/>
<Relationship Id="rId4" Type="; Target="theme;/></Relationships>
定义每个sheetid对应的sheet内容文件。
3.6 xl\worksheets文件夹:
文件文件的内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<worksheet xmlns="; xmlns:r=";><dimension ref="B2:C4"/><sheetViews><sheetView tabSelected="1" workbookViewId="0"><selection activeCell="C5" sqref="C5"/></sheetView></sheetViews><sheetFormatPr defaultRowHeight="14.4"/>
<sheetData> '工作表数据
<row r="2" spans="2:3"><c r="B2" t="s"><v>0</v></c><c r="C2"><v>32</v></c></row>
<row r="3" spans="2:3"><c r="B3" t="s"><v>1</v></c><c r="C3"><v>33</v></c></row>
<row r="4" spans="2:3"><c r="B4" t="s"><v>2</v></c><c r="C4"><v>34</v></c></row>
</sheetData>
<phoneticPr fontId="1" type="noConversion"/><pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/><drawing r:id="rId1"/></worksheet>
以上XML代码中,元素<c>表示该行中的一个单元格,对于单元格中的值,如果<c>元素有t属性的话,<c>元素的子元素<v>的值就是各工作表共享的字符串的索引,否则<v>元素的值就是该单元格的值。
3.7 图片保存在xl\media文件夹中:
4 功能区自定义
通过增加一个文件夹customUI,其中有cu的文件,内容如下:
<customUI xmlns=";>
<ribbon>
<tabs>
‘↓创建新选项卡
<tab id="tabJXC" label="进销存" >
<group id="gpIN" label="进货">
<button id="btIN_INPUT" imageMso="ReviewNextChange"
size="large" label="录入" onAction="btIN_INPUT_onAction"/>
<button id="btIN_REPROT" imageMso="RecordsMoreRecordsMenu"
size="large" label="报表" onAction="btIN_REPORT_onAction"/>
</group>
<group id="gpOUT" label="销售">
<button id="btOUT_INPUT" imageMso="ReviewPreviousChange"
size="large" label="录入" onAction="btOUT_INPUT_onAction"/>
<button id="btOUT_REPROT" imageMso="RecordsMoreRecordsMenu"
size="large" label="报表" onAction="btOUT_REPORT_onAction"/>
<button id="btOUT_RESULTS" imageMso="ControlLayoutStacked"
size="large" label="销售业绩" onAction="btOUT_RESULTS_onAction"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
在工作簿文件与xml文件之间建立关系:
在压缩文件的_rels文件夹内的.rles文件中添加以下内容(添加到最后一个Relationship标记前):
<Relationship Id="customUIRelID"
Type="; Target="customUI/cu"/>
功能区自定义具体操作细节可参考:
《vba|综合应用程序设计(从设计功能区到相关控件代码)》