Ano ang isang XLS file?
Ang mga file na may extension ng XLS ay kumakatawan sa Excel Binary File Format. Ang mga nasabing file ay maaaring gawin ng Microsoft Excel gayundin ng iba pang katulad na mga programa ng spreadsheet tulad ng OpenOffice Calc o Apple Numbers. Ang file na na-save ng Excel ay kilala bilang Workbook kung saan ang bawat workbook ay maaaring magkaroon ng isa o higit pang worksheet. Ang data ay iniimbak at ipinapakita sa mga user sa format ng talahanayan sa worksheet at maaaring sumasaklaw sa mga numerong halaga, data ng teksto, mga formula, mga koneksyon sa panlabas na data, mga larawan, at mga chart. Hinahayaan ka ng mga application tulad ng Microsoft Excel na mag-export ng data ng workbook sa ilang iba’t ibang format kabilang ang PDF, CSV, XLSX, [TXT](/ word-processing/txt/), HTML, XPS, at marami pang iba. Ang XLS file format ay pinalitan ng isang mas bukas at structured na format, XLSX, sa paglabas ng Microsoft Excel 2007. Ang pinakabagong mga bersyon ay nagbibigay pa rin ng suporta para sa paglikha at pagbabasa ng mga XLS file, kahit na XLSX ang unang pagpipilian ng paggamit ngayon.
Maikling Kasaysayan
Ang XLS ay nilikha ng Microsoft para gamitin sa Microsoft Excel at kilala rin bilang Binary Interchange File Format (BIFF). Ang uri ng file na ito ay ipinakilala sa unang pagkakataon sa pamamagitan ng paggawa nitong bahagi ng Excel para sa Windows noong 1987. Ang mga detalye ng format ng XLS file ay ginawang pampubliko para sa una noong Hunyo 2008 bilang Rebisyon 1. Pagkatapos noon, ang mga pagtutukoy ay patuloy na na-update at ang pinakabagong rebisyon ay magagamit ay noong Agosto 2018 na minarkahan bilang Rebisyon 8.0. Ang isang maikling kasaysayan ng iba’t ibang bersyon ng XLS file format ay ang sumusunod:
- Bersyon 7.0 (inilabas kasama ang office 95): Ang bersyong ito ng excel ang pinakamatatag at mas mabilis sa lahat ng mga bersyon at ang mga panloob na muling pagsulat ng stream ay na-update sa 32 bits.
- Bersyon 8 (inilabas kasama ng opisina 97): Ipinakilala ang VBA bilang karaniwang wika at ang mga inalis na natural na label ng wika ay isinama sa bersyong ito sa unang pagkakataon. Nagpakilala rin ito ng isang paper clip office assistant sa unang pagkakataon.
- Bersyon 9 (Inilabas kasama ng opisina 2000): Mayroong mga maliliit na pagbabago lamang sa Bersyon 9 kung saan ang paper clip office assistant ay maaaring sabay na humawak ng maraming bagay na dati ay hindi posible.
- Bersyon 10 (Inilabas kasama ng office XP): Walang anumang kapansin-pansing pagpapahusay ang bersyong ito.
- Bersyon 11 (Inilabas kasama ng opisina 2003): Malaking update sa bersyon 11, ang excel 2003 ay ang pagpapakilala ng mga bagong talahanayan.
Mga Detalye ng Format ng XLS File
Ang data ay inayos sa isang XLS file bilang binary stream sa anyo ng isang compound file tulad ng inilarawan sa [MS-CFB]. Iniimbak ang data sa compound file sa pamamagitan ng paggamit ng mga storage, stream, at substream na naglalaman ng impormasyon tungkol sa nilalaman at istruktura ng isang workbook, kabilang ang data ng workbook gaya ng mga kahulugan ng worksheet.Ang bawat stream o substream ay naglalaman ng isang serye ng mga binary record. Ang bawat binary record ay naglalaman ng zero o higit pang mga structured na field na naglalaman ng data ng workbook. Ang seksyong ito ay nagbibigay ng maikling pangkalahatang-ideya ng XLS File Structure, ngunit para sa mga detalyadong detalye ng format ng file, dapat kumonsulta sa XLS File Formation Specifications na dokumento ng Microsoft.
Stream and Substream
Ang isang workbook ay kinakatawan ng stream ng workbook. Ang bawat worksheet sa isang workbook ay kinakatawan ng Substreams. Bilang karagdagan, mayroon itong Chart Sheet Substream, Macro Sheet Substream, o Dialog Sheet Substream na sumusunod sa Global Substream. Ang bawat binary stream o substream na naglalaman ng data ng workbook ay DAPAT isulat bilang isang serye ng mga binary record.
Record
Ang impormasyon tungkol sa mga feature sa isang workbook ay iniimbak bilang isang talaan na isang variable-length na pagkakasunud-sunod ng mga byte. Ang binary record ay binubuo ng sumusunod na tatlong bahagi:
Record Type: Ang uri ng record ay isang two-byte na unsigned integer na tumutukoy kung anong uri ng impormasyon ang tinukoy ng record at kung paano inayos at naayos ang istruktura ng data ng record na partikular sa record na ito. DAPAT ang mga halaga ng uri ng record ay isang halaga mula sa Record Enumeration (seksyon 2.3) o DAPAT gamitin ng record ang hinaharap na arkitektura ng talaan (seksyon 2.1.6).
Record Size: Ang laki ng record ay isang two-byte na unsigned integer na tumutukoy sa bilang ng mga byte na tumutukoy sa kabuuang laki ng data ng record. DAPAT mas malaki sa o katumbas ng 0 ang record size at DAPAT mas mababa sa o katumbas ng 8224.
Record Data: Ang bahagi ng data ng tala ay naglalaman ng mga patlang na tumutugma sa isang partikular na uri ng tala at binubuo ang natitira sa talaan. Ang pagkakasunud-sunod at istraktura ng mga patlang para sa isang naibigay na uri ng tala ay tinukoy sa kaukulang seksyon para sa uri ng tala na iyon. DAPAT katumbas ng laki ng record data ang laki ng record data. Ang mga field sa bahagi ng record data ay maaaring maglaman ng mga simpleng value, array ng mga value, structure ng ilang field, array ng field, at array ng structures.
Cell Table
Ang mga cell ay ang pangunahing mga bloke ng isang workbook na nag-iimbak ng mga nilalaman ng workbook tulad ng teksto, mga formula at numerical na data. Pinapanatili ng mga cell ang talaan ng nakaimbak na data sa pamamagitan ng istraktura ng data na tinatawag na Cell Table. Ang Cell Table mismo ay nakaimbak sa pagkakasunud-sunod ng mga talaan na umaayon sa mga panuntunan ng CELLTABLE na tinukoy sa dokumento ng mga detalye. Binubuo ito ng isang serye ng mga row block kung saan ang mga row ay nakaayos sa row block. Ang bawat row block ay naglalaman ng mga row mula sa unang row na naglalaman ng data hanggang sa huling row na naglalaman ng data.
Ang data o row formatting ay naka-save sa isang Row record para sa bawat row block. Ang bawat cell na naglalaman ng data o indibidwal na pag-format ng cell ay kinakatawan ng isang tala. Ang pag-format na nauugnay sa isang cell ay maaaring makuha mula sa indibidwal na pag-format ng cell, pag-format ng row, pag-format ng column, o ang default na format ng cell. Ang pagkakasunud-sunod ng precedence para sa pag-format ay indibidwal na pag-format ng cell na may pinakamataas na precedence, na sinusundan ng pag-format ng row, at pagkatapos ay pag-format ng column, at pagkatapos ay ang default na format ng cell. Ang mga cell na walang data at hindi naglalaman ng indibidwal na pag-format ay hindi nai-save.
Formulas
Ang formula ay isang pagkakasunud-sunod ng mga value, reference ng cell, pangalan, function, o operator sa isang cell na magkasamang gumagawa ng bagong value. Ang mga formula ay iniimbak sa isang tokenized na representasyon na kilala bilang “mga parsed expression.“Ang na-parse na expression ay na-convert sa isang textual na formula sa runtime para sa pagpapakita at pag-edit ng user. Ang mga cell formula ay tinukoy ng talaan ng Formula. Ang mga formula ng array ay tinukoy ng Array record. Ang mga nakabahaging formula ay tinukoy ng tala ng ShrFmla.
Charts
Tinutukoy ng chart sheet ang isang chart, isang graphic na nagpapakita ng data o ang mga ugnayan sa pagitan ng mga set ng data sa isang visual na form, at isang cache ng data ng chart, isang lokal na kopya ng data na ginagamit sa data ng chart ay nawawala o kung ang mga link sa external sira ang data source. Tinutukoy ng chart ang isa o dalawang-axis na pangkat, isang hanay ng mga axes na naka-plot ang data ng chart, at ang hanay ng mga serye, trendline, at error bar na tinukoy sa chart. Ang bawat pangkat ng axis ay tumutukoy sa isa hanggang apat na pangkat ng chart na tumutukoy sa uri ng visualization na ginamit upang ipakita ang data. Ang bawat serye, trendline, at error bar ay tumutukoy sa pangkat ng chart kung saan nauugnay ito.
Metadata
Ang metadata ay karagdagang data na nauugnay sa isang partikular na cell o nilalaman nito. Ang metadata ay naitala sa BIFF8 para sa mga layunin ng pagpapalawak sa hinaharap lamang.
Pivot Tables
Ang PivotTable ay isang mekanismo para sa pagbubuod ng source data upang makakuha ng pangkalahatang-ideya ng pamamahagi ng data na iyon. Sa isang PivotTable, ang mga naaangkop na column ng source data ay nagiging mga field na maaaring magamit upang buod ng data. Kapag ang source data ng PivotTable ay OLAP source data, ang OLAP hierarchies at ilang iba pang OLAP entity ay nagiging mga field sa PivotTable. Ang isang PivotTable ay may dalawang pangunahing bahagi, isang PivotCache at isang view ng PivotTable. Maaaring magkaroon ng maraming view ng PivotTable batay sa isang hindi OLAP PivotCache.
Styles
Inilalarawan ng pangkalahatang-ideya kung paano tinukoy ang pag-format at impormasyon ng proteksyon para sa mga cell sa isang sheet (1). Ang pag-format ng cell ay binubuo ng ilang hanay ng mga katangian:
- Font properties (bold, italic, font color, font size, etc…)
- Fill properties (foreground color, background color, pattern, gradient, etc…)
- Alignment properties (left, center, right alignment, etc…)
- Border properties (left, right, top, bottom, thick or thin, color, etc…)
- Number formatting properties (date, time, number of decimal places, etc…)
- Protection properties (locked, hidden, etc…)
Ang mga katangiang ito, sa kabuuan, ay naglalarawan kung paano ipinapakita at nai-print ang isang partikular na cell.