第一篇: Workbook

介绍

在Office Open XML(OOXML)中,工作簿(Workbook)是Excel文档的顶级结构,它包含了文档中的所有工作表(Worksheets)以及与整个文档相关的设置和属性。工作簿的数据存储在名为xl/workbook.xml的文件中。

Excel 文件存储目录结构:

js 复制代码
OOXML文档
│
├─ [Content_Types].xml
│
├─ _rels
│   └─ .rels
│
├─ docProps
│   ├─ core.xml
│   └─ app.xml
│
└─ xl (对于Excel文档,类似的结构适用于Word和PowerPoint)
    ├─ workbook.xml
    │
    ├─ _rels
    │   └─ workbook.xml.rels
    │
    ├─ worksheets
    │   ├─ sheet1.xml
    │   ├─ sheet2.xml
    │   └─ ...
    │
    ├─ styles.xml
    │
    ├─ sharedStrings.xml
    │
    ├─ theme
    │   └─ theme1.xml
    │
    └─ media
        ├─ image1.png
        ├─ image2.jpg
        └─ ...

下面是一个简单的 Excel 文件的 workbook.xml 的截图:

workbook 常用属性介绍

在Office Open XML(OOXML)中,工作簿(Workbook)是Excel文档的顶级结构,它包含了文档中的所有工作表(Worksheets)以及与整个文档相关的设置和属性。工作簿的数据存储在名为xl/workbook.xml的文件中。

以下是工作簿(Workbook)中的一些常用元素和属性:

  1. <sheets>:这个元素包含了文档中所有的工作表(Worksheets)。每个工作表都用一个<sheet>元素表示,包含以下属性:

    • name:工作表的名称。
    • sheetId:工作表的唯一ID。
    • r:id:工作表与工作簿之间的关系ID,用于在关系文件(.rels)中查找工作表的实际文件位置。
  2. <definedNames>:这个元素包含了文档中所有的已定义名称(Defined Names)。已定义名称是一种将公式、单元格、范围或常量值与一个名称关联的功能。每个已定义名称用一个<definedName>元素表示,包含以下属性:

    • name:已定义名称的名称。
    • localSheetId(可选):已定义名称所在的工作表的索引,如果已定义名称是全局的(即适用于整个工作簿),则不需要此属性。
    • hidden(可选):一个布尔值,表示已定义名称是否为隐藏。
    • <definedName>元素的文本内容表示已定义名称的引用或公式。
  3. <bookViews>:这个元素包含了文档的工作簿视图设置。每个工作簿视图都用一个<workbookView>元素表示,包含以下属性:

    • xWindow:工作簿窗口左上角的水平位置(以像素为单位)。
    • yWindow:工作簿窗口左上角的垂直位置(以像素为单位)。
    • windowWidth:工作簿窗口的宽度(以像素为单位)。
    • windowHeight:工作簿窗口的高度(以像素为单位)。
    • activeTab:表示当前激活工作表的索引。
  4. <calcPr>:这个元素包含了文档的计算属性设置,如自动计算、迭代计算等。<calcPr>元素包含以下属性:

    • calcId:计算引擎的版本。
    • calcMode:计算模式,可以是"auto"(自动计算)或"manual"(手动计算)。
    • iterate(可选):一个布尔值,表示是否启用迭代计算。
    • iterateCount(可选):迭代计算的最大次数。
    • iterateDelta(可选):迭代计算的收敛值。
  5. <workbookPr>: 用于表示Excel工作簿的一些全局属性和设置

    • date1904:一个布尔值,表示工作簿中的日期系统。如果为true,则使用1904日期系统(通常在Mac系统上使用);如果为false或未设置,则使用1900日期系统(通常在Windows系统上使用)。

    • showObjects:用于控制工作簿中嵌入式对象(如图表、图片等)的显示。可能的值包括:

      • all: 显示所有对象
      • placeholders: 仅显示对象占位符
      • none: 不显示任何对象。
    • filterPrivacy: 一个布尔值,表示是否删除从其他用户处筛选的数据。如果为true,则删除筛选数据;如果为false或未设置,则保留筛选数据。

    • updateLinks: 用于控制工作簿中外部链接的更新方式。可能的值包括:

      • userSet(默认):由用户手动更新链接。
      • never:从不更新链接。
      • always:始终更新链接。

这只是工作簿中一些常用元素和属性的概述。实际上,工作簿中还包含许多其他设置和属性,用于控制Excel文档的各个方面。然而,通过了解上述基本元素和属性,您可以更好地理解OOXML中工作簿的概念和功能。

相关推荐
子兮曰3 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰3 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万3 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝3 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
胡写代码3 天前
别再前后端各写一套表单校验了
java·后端
三十而立洋3 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
大勇前进3 天前
原生 PHP 还是 Laravel?小项目到底要不要上框架
后端
yuzhi_liu3 天前
我用 LangGraph4j 实现 Multi-Agent Supervisor
后端
alsmile3 天前
Node-RED 之外,国产规则引擎的新方案:基于标准语法,Go 先行实现
后端·开源·go
大白803 天前
PHP 内存溢出排查思路:看懂报错日志,精准定位问题
后端