😸

xlsxの中身

2024/08/02に公開

はじめに

xlsxはxmlの皮を被ったzipファイル(意訳)と職場で聞いたので、試してみたら本当(?)だった。

して、折角なのでどこかにまとめておこうかと思った次第です。

Excelを使う機会が多いので、いつかの自分への備忘の意味合いが強いです。

内容は手元で試し、理解(推測を含む)出来る限りの情報を書いていますが、公式情報ではないのでご留意を。

気が向いたらもっと調べて追記します。

試した環境

  • Excel for Microsoft 365 MSO (バージョン 2406 ビルド 16.0.17726.20078) 64 ビット

  • Windows11 23H2

どうやって中身を見るの?

  1. 中身を見たいxlsxファイルを用意(例:TestBook.xlsx)

  2. 拡張子を.zipへリネーム(例:TestBook.zip)

  3. 好きなやり方で解凍。今回はWin11の標準機能(エクスプローラーの全て展開)で解凍

フォルダ階層

解凍すると以下の様になるかと。

.
└── 最上位フォルダ(ブック名)/
    ├── _rels/
    │   └── .rels
    ├── docProps/
    │   ├── app.xml
    │   └── core.xml
    ├── xl/
    │   ├── _rels/
    │   │   └── workbook.xml.rels
    │   ├── drawings/
    │   │   ├── _rels/
    │   │   │   └── drawingN.xml.rels
    │   │   └── drawingN.xml
    │   ├── media/
    │   │   └── imageN.png
    │   ├── richData/
    │   │   ├── _rels/
    │   │   │   └── richValueRel.xml.rels
    │   │   ├── rdrichvalue.xml
    │   │   ├── rdrichvaluestructure.xml
    │   │   ├── rdRichValueTypes.xml
    │   │   └── richValueRel.xml
    │   ├── theme/
    │   │   └── theme1.xml
    │   ├── worksheets/
    │   │   ├── _rels/
    │   │   │   └── sheetN.xml.rels
    │   │   └── sheetN.xml
    │   ├── calcChain.xml
    │   ├── metadata.xml
    │   ├── sharedStrings.xml
    │   ├── styles.xml
    │   └── workbook.xml
    └── [Content_Types].xml

_relsフォルダ

中身は「.rels」というドットファイルのみ。

.relsはxmlのスキーマ情報が書かれている
※以降、xmlファイルは成形しています

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
  <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
  <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/>
</Relationships>

リンク先はブラウザから繋がらず。(whoisでは引っかかった)

docPropsフォルダ

中身はapp.xml、core.xmlの2ファイル。

ヘッダー情報やファイルの更新情報などが含まれている。

app.xml

シート名やExcelのヘッダー情報が含まれている。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"
  xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
  <Application>Microsoft Excel</Application>
  <DocSecurity>0</DocSecurity>
  <ScaleCrop>false</ScaleCrop>
  <HeadingPairs>
    <vt:vector size="2" baseType="variant">
      <vt:variant>
        <vt:lpstr>ワークシート</vt:lpstr>
      </vt:variant>
      <vt:variant>
        <vt:i4>1</vt:i4>
      </vt:variant>
    </vt:vector>
  </HeadingPairs>
  <TitlesOfParts>
    <vt:vector size="1" baseType="lpstr">
      <vt:lpstr>Sheet1</vt:lpstr>
    </vt:vector>
  </TitlesOfParts>
  <Company></Company>
  <LinksUpToDate>false</LinksUpToDate>
  <SharedDoc>false</SharedDoc>
  <HyperlinksChanged>false</HyperlinksChanged>
  <AppVersion>16.0300</AppVersion>
</Properties>

core.xml

最終更新日、更新者が含まれている。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cp:coreProperties
  xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
  xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/"
  xmlns:dcmitype="http://purl.org/dc/dcmitype/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <dc:creator>otokura</dc:creator>
  <cp:lastModifiedBy>ユーザー名</cp:lastModifiedBy>
  <dcterms:created xsi:type="dcterms:W3CDTF">2015-06-05T18:19:34Z</dcterms:created>
  <dcterms:modified xsi:type="dcterms:W3CDTF">2024-06-29T05:53:30Z</dcterms:modified>
</cp:coreProperties>

xlフォルダ

画像、オブジェクト、計算式、セルの内容といったワークシートの内容が含まれている。

_relsフォルダ

workbook.xml.rels

例によってxmlファイル。

こちらもスキーマ情報か?

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId8"
    Type="http://schemas.microsoft.com/office/2017/06/relationships/rdRichValueTypes"
    Target="richData/rdRichValueTypes.xml" />
  <Relationship Id="rId3"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles"
    Target="styles.xml" />
  <Relationship Id="rId7"
    Type="http://schemas.microsoft.com/office/2017/06/relationships/rdRichValueStructure"
    Target="richData/rdrichvaluestructure.xml" />
  <Relationship Id="rId2"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme"
    Target="theme/theme1.xml" />
  <Relationship Id="rId1"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet"
    Target="worksheets/sheet1.xml" />
  <Relationship Id="rId6"
    Type="http://schemas.microsoft.com/office/2017/06/relationships/rdRichValue"
    Target="richData/rdrichvalue.xml" />
  <Relationship Id="rId5"
    Type="http://schemas.microsoft.com/office/2022/10/relationships/richValueRel"
    Target="richData/richValueRel.xml" />
  <Relationship Id="rId4"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata"
    Target="metadata.xml" />
</Relationships>

drawingsフォルダ

_relsフォルダ

drawingN.xml.rels

言わずもがなxmlファイル。画像ファイル(オブジェクトは含まれない?)の参照先が書いてある。

Nはシートの枚数に依存する。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId1"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"
    Target="../media/image2.png" />
</Relationships>

drawingN.xml

画像、オブジェクトの配置先、オブジェクトに書かれた文字の情報などが含まれている。

こちらもシートの枚数が増える度にdrawing1,drawing2,drawing3...と増えて行く。

量が多くて解りづらいが、cNvPr id="2"にオブジェクトの種類が書いてあり、
の少し下に「オブジェクトその1」とオブジェクト上の文字列がある。


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xdr:wsDr xmlns:xdr="http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"
  xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
  <xdr:twoCellAnchor>
    <xdr:from>
      <xdr:col>1</xdr:col>
      <xdr:colOff>0</xdr:colOff>
      <xdr:row>1</xdr:row>
      <xdr:rowOff>0</xdr:rowOff>
    </xdr:from>
    <xdr:to>
      <xdr:col>9</xdr:col>
      <xdr:colOff>0</xdr:colOff>
      <xdr:row>12</xdr:row>
      <xdr:rowOff>0</xdr:rowOff>
    </xdr:to>
    <xdr:sp macro="" textlink="">
      <xdr:nvSpPr>
        <xdr:cNvPr id="2" name="正方形/長方形 1">
          <a:extLst>
            <a:ext uri="{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}">
              <a16:creationId xmlns:a16="http://schemas.microsoft.com/office/drawing/2014/main"
                id="{6015C85B-7B93-57A6-1D9A-77B20D62AED0}" />
            </a:ext>
          </a:extLst>
        </xdr:cNvPr>
        <xdr:cNvSpPr />
      </xdr:nvSpPr>
      <xdr:spPr>
        <a:xfrm>
          <a:off x="685800" y="238125" />
          <a:ext cx="5486400" cy="2619375" />
        </a:xfrm>
        <a:prstGeom prst="rect">
          <a:avLst />
        </a:prstGeom>
      </xdr:spPr>
      <xdr:style>
        <a:lnRef idx="2">
          <a:schemeClr val="accent1">
            <a:shade val="15000" />
          </a:schemeClr>
        </a:lnRef>
        <a:fillRef idx="1">
          <a:schemeClr val="accent1" />
        </a:fillRef>
        <a:effectRef idx="0">
          <a:schemeClr val="accent1" />
        </a:effectRef>
        <a:fontRef idx="minor">
          <a:schemeClr val="lt1" />
        </a:fontRef>
      </xdr:style>
      <xdr:txBody>
        <a:bodyPr vertOverflow="clip" horzOverflow="clip" rtlCol="0" anchor="t" />
        <a:lstStyle />
        <a:p>
          <a:pPr algn="l" />
          <a:r>
            <a:rPr kumimoji="1" lang="ja-JP" altLang="en-US" sz="1100" />
            <a:t>オブジェクトその1</a:t>
          </a:r>
        </a:p>
      </xdr:txBody>
    </xdr:sp>
    <xdr:clientData />
  </xdr:twoCellAnchor>
  <xdr:twoCellAnchor editAs="oneCell">
    <xdr:from>
      <xdr:col>14</xdr:col>
      <xdr:colOff>176893</xdr:colOff>
      <xdr:row>3</xdr:row>
      <xdr:rowOff>176893</xdr:rowOff>
    </xdr:from>
    <xdr:to>
      <xdr:col>16</xdr:col>
      <xdr:colOff>254655</xdr:colOff>
      <xdr:row>9</xdr:row>
      <xdr:rowOff>145798</xdr:rowOff>
    </xdr:to>
    <xdr:pic>
      <xdr:nvPicPr>
        <xdr:cNvPr id="4" name="図 3">
          <a:extLst>
            <a:ext uri="{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}">
              <a16:creationId xmlns:a16="http://schemas.microsoft.com/office/drawing/2014/main"
                id="{AA70CE4D-ADA2-058F-A7E7-24245D260174}" />
            </a:ext>
          </a:extLst>
        </xdr:cNvPr>
        <xdr:cNvPicPr>
          <a:picLocks noChangeAspect="1" />
        </xdr:cNvPicPr>
      </xdr:nvPicPr>
      <xdr:blipFill>
        <a:blip xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
          r:embed="rId1">
          <a:extLst>
            <a:ext uri="{28A0092B-C50C-407E-A947-70E740481C1C}">
              <a14:useLocalDpi xmlns:a14="http://schemas.microsoft.com/office/drawing/2010/main"
                val="0" />
            </a:ext>
          </a:extLst>
        </a:blip>
        <a:stretch>
          <a:fillRect />
        </a:stretch>
      </xdr:blipFill>
      <xdr:spPr>
        <a:xfrm>
          <a:off x="9701893" y="911679" />
          <a:ext cx="1438476" cy="1438476" />
        </a:xfrm>
        <a:prstGeom prst="rect">
          <a:avLst />
        </a:prstGeom>
      </xdr:spPr>
    </xdr:pic>
    <xdr:clientData />
  </xdr:twoCellAnchor>
</xdr:wsDr>

Excel上では以下の様に見える。
※黒い■はペイントで作成した画像。小さい方はセル埋め込み

image.png

mediaフォルダ

シートに貼り付けた画像ファイルが、imageN.pngという名前で置かれている。

今回の場合、上記の通り黒い■が2つあるので、image1.pngとimage2.pngが含まれる

richDataフォルダ

正直何の情報が含まれているか解らない。

_relsフォルダ

richValueRel.xml.rels

drawingN.xml.relsに中身が似ている気がするが、詳細は不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId1"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"
    Target="../media/image1.png" />
</Relationships>

rdrichvalue.xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rvData xmlns="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" count="1">
  <rv s="0">
    <v>0</v>
    <v>5</v>
  </rv>
</rvData>

rdrichvaluestructure.xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rvStructures xmlns="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" count="1">
  <s t="_localImage">
    <k n="_rvRel:LocalImageIdentifier" t="i" />
    <k n="CalcOrigin" t="i" />
  </s>
</rvStructures>

rdRichValueTypes.xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rvTypesInfo xmlns="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x"
  xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
  <global>
    <keyFlags>
      <key name="_Self">
        <flag name="ExcludeFromFile" value="1" />
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_DisplayString">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_Flags">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_Format">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_SubLabel">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_Attribution">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_Icon">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_Display">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_CanonicalPropertyNames">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
      <key name="_ClassificationId">
        <flag name="ExcludeFromCalcComparison" value="1" />
      </key>
    </keyFlags>
  </global>
</rvTypesInfo>

richValueRel.xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<richValueRels xmlns="http://schemas.microsoft.com/office/spreadsheetml/2022/richvaluerel"
  xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
  <rel r:id="rId1" />
</richValueRels>

themeフォルダ

Excel本体のテーマ情報と思いたいが、xlsxファイルにも保存される物なのか?

theme1.xml

こちらはExcelのテーマ情報が書かれている故か、シート枚数には依存しない様子。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">
  <a:themeElements>
    <a:clrScheme name="Office">
      <a:dk1>
        <a:sysClr val="windowText" lastClr="000000" />
      </a:dk1>
      <a:lt1>
        <a:sysClr val="window" lastClr="FFFFFF" />
      </a:lt1>
      <a:dk2>
        <a:srgbClr val="44546A" />
      </a:dk2>
      <a:lt2>
        <a:srgbClr val="E7E6E6" />
      </a:lt2>
      <a:accent1>
        <a:srgbClr val="5B9BD5" />
      </a:accent1>
      <a:accent2>
        <a:srgbClr val="ED7D31" />
      </a:accent2>
      <a:accent3>
        <a:srgbClr val="A5A5A5" />
      </a:accent3>
      <a:accent4>
        <a:srgbClr val="FFC000" />
      </a:accent4>
      <a:accent5>
        <a:srgbClr val="4472C4" />
      </a:accent5>
      <a:accent6>
        <a:srgbClr val="70AD47" />
      </a:accent6>
      <a:hlink>
        <a:srgbClr val="0563C1" />
      </a:hlink>
      <a:folHlink>
        <a:srgbClr val="954F72" />
      </a:folHlink>
    </a:clrScheme>
    <a:fontScheme name="Office">
      <a:majorFont>
        <a:latin typeface="Calibri Light" panose="020F0302020204030204" />
        <a:ea typeface="" />
        <a:cs typeface="" />
        <a:font script="Jpan" typeface="Yu Gothic Light" />
        <a:font script="Hang" typeface="맑은 고딕" />
        <a:font script="Hans" typeface="等线 Light" />
        <a:font script="Hant" typeface="新細明體" />
        <a:font script="Arab" typeface="Times New Roman" />
        <a:font script="Hebr" typeface="Times New Roman" />
        <a:font script="Thai" typeface="Tahoma" />
        <a:font script="Ethi" typeface="Nyala" />
        <a:font script="Beng" typeface="Vrinda" />
        <a:font script="Gujr" typeface="Shruti" />
        <a:font script="Khmr" typeface="MoolBoran" />
        <a:font script="Knda" typeface="Tunga" />
        <a:font script="Guru" typeface="Raavi" />
        <a:font script="Cans" typeface="Euphemia" />
        <a:font script="Cher" typeface="Plantagenet Cherokee" />
        <a:font script="Yiii" typeface="Microsoft Yi Baiti" />
        <a:font script="Tibt" typeface="Microsoft Himalaya" />
        <a:font script="Thaa" typeface="MV Boli" />
        <a:font script="Deva" typeface="Mangal" />
        <a:font script="Telu" typeface="Gautami" />
        <a:font script="Taml" typeface="Latha" />
        <a:font script="Syrc" typeface="Estrangelo Edessa" />
        <a:font script="Orya" typeface="Kalinga" />
        <a:font script="Mlym" typeface="Kartika" />
        <a:font script="Laoo" typeface="DokChampa" />
        <a:font script="Sinh" typeface="Iskoola Pota" />
        <a:font script="Mong" typeface="Mongolian Baiti" />
        <a:font script="Viet" typeface="Times New Roman" />
        <a:font script="Uigh" typeface="Microsoft Uighur" />
        <a:font script="Geor" typeface="Sylfaen" />
      </a:majorFont>
      <a:minorFont>
        <a:latin typeface="Calibri" panose="020F0502020204030204" />
        <a:ea typeface="" />
        <a:cs typeface="" />
        <a:font script="Jpan" typeface="Yu Gothic" />
        <a:font script="Hang" typeface="맑은 고딕" />
        <a:font script="Hans" typeface="等线" />
        <a:font script="Hant" typeface="新細明體" />
        <a:font script="Arab" typeface="Arial" />
        <a:font script="Hebr" typeface="Arial" />
        <a:font script="Thai" typeface="Tahoma" />
        <a:font script="Ethi" typeface="Nyala" />
        <a:font script="Beng" typeface="Vrinda" />
        <a:font script="Gujr" typeface="Shruti" />
        <a:font script="Khmr" typeface="DaunPenh" />
        <a:font script="Knda" typeface="Tunga" />
        <a:font script="Guru" typeface="Raavi" />
        <a:font script="Cans" typeface="Euphemia" />
        <a:font script="Cher" typeface="Plantagenet Cherokee" />
        <a:font script="Yiii" typeface="Microsoft Yi Baiti" />
        <a:font script="Tibt" typeface="Microsoft Himalaya" />
        <a:font script="Thaa" typeface="MV Boli" />
        <a:font script="Deva" typeface="Mangal" />
        <a:font script="Telu" typeface="Gautami" />
        <a:font script="Taml" typeface="Latha" />
        <a:font script="Syrc" typeface="Estrangelo Edessa" />
        <a:font script="Orya" typeface="Kalinga" />
        <a:font script="Mlym" typeface="Kartika" />
        <a:font script="Laoo" typeface="DokChampa" />
        <a:font script="Sinh" typeface="Iskoola Pota" />
        <a:font script="Mong" typeface="Mongolian Baiti" />
        <a:font script="Viet" typeface="Arial" />
        <a:font script="Uigh" typeface="Microsoft Uighur" />
        <a:font script="Geor" typeface="Sylfaen" />
      </a:minorFont>
    </a:fontScheme>
    <a:fmtScheme name="Office">
      <a:fillStyleLst>
        <a:solidFill>
          <a:schemeClr val="phClr" />
        </a:solidFill>
        <a:gradFill rotWithShape="1">
          <a:gsLst>
            <a:gs pos="0">
              <a:schemeClr val="phClr">
                <a:lumMod val="110000" />
                <a:satMod val="105000" />
                <a:tint val="67000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="50000">
              <a:schemeClr val="phClr">
                <a:lumMod val="105000" />
                <a:satMod val="103000" />
                <a:tint val="73000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="100000">
              <a:schemeClr val="phClr">
                <a:lumMod val="105000" />
                <a:satMod val="109000" />
                <a:tint val="81000" />
              </a:schemeClr>
            </a:gs>
          </a:gsLst>
          <a:lin ang="5400000" scaled="0" />
        </a:gradFill>
        <a:gradFill rotWithShape="1">
          <a:gsLst>
            <a:gs pos="0">
              <a:schemeClr val="phClr">
                <a:satMod val="103000" />
                <a:lumMod val="102000" />
                <a:tint val="94000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="50000">
              <a:schemeClr val="phClr">
                <a:satMod val="110000" />
                <a:lumMod val="100000" />
                <a:shade val="100000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="100000">
              <a:schemeClr val="phClr">
                <a:lumMod val="99000" />
                <a:satMod val="120000" />
                <a:shade val="78000" />
              </a:schemeClr>
            </a:gs>
          </a:gsLst>
          <a:lin ang="5400000" scaled="0" />
        </a:gradFill>
      </a:fillStyleLst>
      <a:lnStyleLst>
        <a:ln w="6350" cap="flat" cmpd="sng" algn="ctr">
          <a:solidFill>
            <a:schemeClr val="phClr" />
          </a:solidFill>
          <a:prstDash val="solid" />
          <a:miter lim="800000" />
        </a:ln>
        <a:ln w="12700" cap="flat" cmpd="sng" algn="ctr">
          <a:solidFill>
            <a:schemeClr val="phClr" />
          </a:solidFill>
          <a:prstDash val="solid" />
          <a:miter lim="800000" />
        </a:ln>
        <a:ln w="19050" cap="flat" cmpd="sng" algn="ctr">
          <a:solidFill>
            <a:schemeClr val="phClr" />
          </a:solidFill>
          <a:prstDash val="solid" />
          <a:miter lim="800000" />
        </a:ln>
      </a:lnStyleLst>
      <a:effectStyleLst>
        <a:effectStyle>
          <a:effectLst />
        </a:effectStyle>
        <a:effectStyle>
          <a:effectLst />
        </a:effectStyle>
        <a:effectStyle>
          <a:effectLst>
            <a:outerShdw blurRad="57150" dist="19050" dir="5400000" algn="ctr" rotWithShape="0">
              <a:srgbClr val="000000">
                <a:alpha val="63000" />
              </a:srgbClr>
            </a:outerShdw>
          </a:effectLst>
        </a:effectStyle>
      </a:effectStyleLst>
      <a:bgFillStyleLst>
        <a:solidFill>
          <a:schemeClr val="phClr" />
        </a:solidFill>
        <a:solidFill>
          <a:schemeClr val="phClr">
            <a:tint val="95000" />
            <a:satMod val="170000" />
          </a:schemeClr>
        </a:solidFill>
        <a:gradFill rotWithShape="1">
          <a:gsLst>
            <a:gs pos="0">
              <a:schemeClr val="phClr">
                <a:tint val="93000" />
                <a:satMod val="150000" />
                <a:shade val="98000" />
                <a:lumMod val="102000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="50000">
              <a:schemeClr val="phClr">
                <a:tint val="98000" />
                <a:satMod val="130000" />
                <a:shade val="90000" />
                <a:lumMod val="103000" />
              </a:schemeClr>
            </a:gs>
            <a:gs pos="100000">
              <a:schemeClr val="phClr">
                <a:shade val="63000" />
                <a:satMod val="120000" />
              </a:schemeClr>
            </a:gs>
          </a:gsLst>
          <a:lin ang="5400000" scaled="0" />
        </a:gradFill>
      </a:bgFillStyleLst>
    </a:fmtScheme>
  </a:themeElements>
  <a:objectDefaults />
  <a:extraClrSchemeLst />
  <a:extLst>
    <a:ext uri="{05A4C25C-085E-4340-85A3-A5531E510DB2}">
      <thm15:themeFamily xmlns:thm15="http://schemas.microsoft.com/office/thememl/2012/main"
        name="Office Theme" id="{62F939B6-93AF-4DB8-9C6B-D6C7DFDC589F}"
        vid="{4A3C46E8-61CC-4603-A589-7422A47A8E4A}" />
    </a:ext>
  </a:extLst>
</a:theme>

worksheetsフォルダ

ワークシート本体の内容が含まれている。

_relsフォルダ

sheetN.xml.rels

例によってシートの番号に対応付けられている。

中身はスキーマ情報か?

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="rId1"
    Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing"
    Target="../drawings/drawing1.xml" />
</Relationships>

sheetN.xml

具体的なシートの内容について書かれている。

言わずもがなNはシート番号。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"
  xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="x14ac xr xr2 xr3"
  xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac"
  xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision"
  xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"
  xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3"
  xr:uid="{0C33A063-79AE-4C0F-828B-1FDDF0A5A547}">
  <dimension ref="B2:B8" />
  <sheetViews>
    <sheetView tabSelected="1" workbookViewId="0" />
  </sheetViews>
  <sheetFormatPr defaultRowHeight="18.75" />
  <sheetData>
    <row r="2" spans="2:2">
      <c r="B2" t="s">
        <v>0</v>
      </c>
    </row>
    <row r="3" spans="2:2">
      <c r="B3" t="s">
        <v>1</v>
      </c>
    </row>
    <row r="5" spans="2:2">
      <c r="B5">
        <f>COUNTA(B2:B3)</f>
        <v>2</v>
      </c>
    </row>
    <row r="7" spans="2:2">
      <c r="B7" t="str" cm="1">
        <f t="array" ref="B7:B8">B2:B3</f>
        <v>aaa</v>
      </c>
    </row>
    <row r="8" spans="2:2">
      <c r="B8" t="str">
        <v>bbb</v>
      </c>
    </row>
  </sheetData>
  <phoneticPr fontId="1" />
  <pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3" />
  <pageSetup paperSize="9" orientation="portrait" r:id="rId1" />
  <drawing r:id="rId2" />
</worksheet>

Excelでは以下の様に見える。各セルの内容は以下の通り。

  • B2,B3:素の値
  • B5:=COUNTA(B2:B3)
  • B7:=B2:B3 ※スピル

image.png

xlフォルダ内にある、その他のxmlファイル

calcChain.xml

上記のシートを複製して取得した値が以下。

各セルの参照先を示している物と思われる。i="N"のNがシート番号かと。

他のプロパティについては要検証。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<calcChain xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
  <c r="B7" i="4" l="1" a="1" />
  <c r="B7" i="4" s="1" />
  <c r="B5" i="4" />
  <c r="B7" i="3" a="1" />
  <c r="B7" i="3" s="1" />
  <c r="B5" i="3" />
</calcChain>

metadata.xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"
  xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata"
  xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">
  <metadataTypes count="2">
    <metadataType name="XLRICHVALUE" minSupportedVersion="120000" copy="1" pasteAll="1"
      pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1"
      assign="1" coerce="1" />
    <metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1"
      merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1"
      coerce="1" cellMeta="1" />
  </metadataTypes>
  <futureMetadata name="XLRICHVALUE" count="1">
    <bk>
      <extLst>
        <ext uri="{3e2802c4-a4d2-4d8b-9148-e3be6c30e623}">
          <xlrd:rvb i="0" />
        </ext>
      </extLst>
    </bk>
  </futureMetadata>
  <futureMetadata name="XLDAPR" count="1">
    <bk>
      <extLst>
        <ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">
          <xda:dynamicArrayProperties fDynamic="1" fCollapsed="0" />
        </ext>
      </extLst>
    </bk>
  </futureMetadata>
  <cellMetadata count="1">
    <bk>
      <rc t="2" v="0" />
    </bk>
  </cellMetadata>
  <valueMetadata count="1">
    <bk>
      <rc t="1" v="0" />
    </bk>
  </valueMetadata>
</metadata>

sharedStrings.xml

生の文字が含まれている。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="4" uniqueCount="2">
  <si>
    <t>aaa</t>
    <phoneticPr fontId="1" />
  </si>
  <si>
    <t>bbb</t>
    <phoneticPr fontId="1" />
  </si>
</sst>

styles.xml

恐らくシートのスタイル(ビューなど)の情報と思われる。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="x14ac x16r2 xr"
  xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac"
  xmlns:x16r2="http://schemas.microsoft.com/office/spreadsheetml/2015/02/main"
  xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision">
  <fonts count="2">
    <font>
      <sz val="11" />
      <color theme="1" />
      <name val="Yu Gothic" />
      <family val="2" />
      <scheme val="minor" />
    </font>
    <font>
      <sz val="6" />
      <name val="Yu Gothic" />
      <family val="3" />
      <charset val="128" />
      <scheme val="minor" />
    </font>
  </fonts>
  <fills count="2">
    <fill>
      <patternFill patternType="none" />
    </fill>
    <fill>
      <patternFill patternType="gray125" />
    </fill>
  </fills>
  <borders count="1">
    <border>
      <left />
      <right />
      <top />
      <bottom />
      <diagonal />
    </border>
  </borders>
  <cellStyleXfs count="1">
    <xf numFmtId="0" fontId="0" fillId="0" borderId="0" />
  </cellStyleXfs>
  <cellXfs count="1">
    <xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0" />
  </cellXfs>
  <cellStyles count="1">
    <cellStyle name="標準" xfId="0" builtinId="0" />
  </cellStyles>
  <dxfs count="0" />
  <tableStyles count="0" defaultTableStyle="TableStyleMedium2" defaultPivotStyle="PivotStyleLight16" />
  <extLst>
    <ext uri="{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}"
      xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main">
      <x14:slicerStyles defaultSlicerStyle="SlicerStyleLight1" />
    </ext>
    <ext uri="{9260A510-F301-46a8-8635-F512D64BE5F5}"
      xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main">
      <x15:timelineStyles defaultTimelineStyle="TimeSlicerStyleLight1" />
    </ext>
  </extLst>
</styleSheet>

workbook.xml

シートの数、保存先などのブック全体の情報が含まれている。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"
  xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="x15 xr xr6 xr10 xr2"
  xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"
  xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision"
  xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6"
  xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10"
  xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2">
  <fileVersion appName="xl" lastEdited="7" lowestEdited="6" rupBuild="27726" />
  <workbookPr />
  <mc:AlternateContent xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006">
    <mc:Choice Requires="x15">
      <x15ac:absPath url="https://XXXXXXXXXX/デスクトップ/tmp/"
        xmlns:x15ac="http://schemas.microsoft.com/office/spreadsheetml/2010/11/ac" />
    </mc:Choice>
  </mc:AlternateContent>
  <xr:revisionPtr revIDLastSave="0" documentId="8_{16ECADEC-E30D-4280-A117-D2E097322B88}"
    xr6:coauthVersionLast="47" xr6:coauthVersionMax="47"
    xr10:uidLastSave="{00000000-0000-0000-0000-000000000000}" />
  <bookViews>
    <workbookView xWindow="-120" yWindow="-120" windowWidth="29040" windowHeight="15720"
      activeTab="3" xr2:uid="{00000000-000D-0000-FFFF-FFFF00000000}" />
  </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" />
    <sheet name="Sheet4" sheetId="4" r:id="rId4" />
  </sheets>
  <calcPr calcId="191029" />
  <extLst>
    <ext uri="{140A7094-0E35-4892-8432-C4D2E57EDEB5}"
      xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main">
      <x15:workbookPr chartTrackingRefBase="1" />
    </ext>
    <ext uri="{B58B0392-4F1F-4190-BB64-5DF3571DCE5F}"
      xmlns:xcalcf="http://schemas.microsoft.com/office/spreadsheetml/2018/calcfeatures">
      <xcalcf:calcFeatures>
        <xcalcf:feature name="microsoft.com:RD" />
        <xcalcf:feature name="microsoft.com:Single" />
        <xcalcf:feature name="microsoft.com:FV" />
        <xcalcf:feature name="microsoft.com:CNMTM" />
        <xcalcf:feature name="microsoft.com:LET_WF" />
        <xcalcf:feature name="microsoft.com:LAMBDA_WF" />
        <xcalcf:feature name="microsoft.com:ARRAYTEXT_WF" />
      </xcalcf:calcFeatures>
    </ext>
  </extLst>
</workbook>

[Content_Types].xml

不明。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
  <Default Extension="bin"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings" />
  <Default Extension="png" ContentType="image/png" />
  <Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml" />
  <Default Extension="xml" ContentType="application/xml" />
  <Override PartName="/xl/workbook.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml" />
  <Override PartName="/xl/worksheets/sheet1.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />
  <Override PartName="/xl/worksheets/sheet2.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />
  <Override PartName="/xl/worksheets/sheet3.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />
  <Override PartName="/xl/worksheets/sheet4.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" />
  <Override PartName="/xl/theme/theme1.xml"
    ContentType="application/vnd.openxmlformats-officedocument.theme+xml" />
  <Override PartName="/xl/styles.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml" />
  <Override PartName="/xl/sharedStrings.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml" />
  <Override PartName="/xl/metadata.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml" />
  <Override PartName="/xl/richData/richValueRel.xml"
    ContentType="application/vnd.ms-excel.richvaluerel+xml" />
  <Override PartName="/xl/richData/rdrichvalue.xml"
    ContentType="application/vnd.ms-excel.rdrichvalue+xml" />
  <Override PartName="/xl/richData/rdrichvaluestructure.xml"
    ContentType="application/vnd.ms-excel.rdrichvaluestructure+xml" />
  <Override PartName="/xl/richData/rdRichValueTypes.xml"
    ContentType="application/vnd.ms-excel.rdrichvaluetypes+xml" />
  <Override PartName="/xl/drawings/drawing1.xml"
    ContentType="application/vnd.openxmlformats-officedocument.drawing+xml" />
  <Override PartName="/xl/drawings/drawing2.xml"
    ContentType="application/vnd.openxmlformats-officedocument.drawing+xml" />
  <Override PartName="/xl/drawings/drawing3.xml"
    ContentType="application/vnd.openxmlformats-officedocument.drawing+xml" />
  <Override PartName="/xl/drawings/drawing4.xml"
    ContentType="application/vnd.openxmlformats-officedocument.drawing+xml" />
  <Override PartName="/xl/calcChain.xml"
    ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml" />
  <Override PartName="/docProps/core.xml"
    ContentType="application/vnd.openxmlformats-package.core-properties+xml" />
  <Override PartName="/docProps/app.xml"
    ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml" />
</Types>

おわり

IRMとかMSアカウントとかが関わって来るともっと複雑になりそう。

Discussion