Dataopslag en communicatie

Excel spreadsheet

 

Aantal rijen en kolommen

 

Excel had tot versie 7.0 een beperking in de omvang van de datasets tot 16K (214 = 16.384) rijen. Versies 8.0 tot 11.0 konden 64K (216 = 65.536) rijen en 256 kolommen (28 tot label ‘IV’) aan. Versie 12.0 kan met 1M (220 = 1.048.576) rijen en 16.384 (214 tot label ‘XFD’) kolommen overweg.

 

Bestandsformaten

 

Microsoft Excel gebruikte tot versie 2007 hun eigen binaire bestandformaat genaamd Excel Binary File Format (.xls) als primair formaat. Excel 2007 maakt gebruik van Office Open XML als primair bestandsformaat, een op XML gebaseerde formaat dat volgde na een eerder op XML gebaseerd formaat genaamd “XML Spreadsheet” ( “XMLSS”), dat voor het eerst in Excel 2002 werd geïntroduceerd.

Hoewel Excel 2007 het gebruik van de nieuwe op XML-gebaseerde formaten als vervangers ondersteunde en stimuleerde, bleef het uitwisselbaar met de traditionele, binaire formaten. De meeste versies van Microsoft Excel kunnen bovendien CSV, DBF, SYLK, DIF, en andere oudere formaten lezen. De ondersteuning van enkele oudere bestandsformaten werd in Excel 2007 verwijderd. Dat betrof voornamelijk bestandsindelingen die afkomstig waren uit DOS-programma’s.

 

XML Spreadsheet

 

Hoofd artikel: Microsoft Office XML-formaten

Het in Excel 2002 geïntroduceerde XML Spreadsheet-formaat is een eenvoudig, op XML-gebaseerd formaat, waarin een aantal meer geavanceerde functies, zoals de opslag van VBA-macro’s ontbreekt. Hoewel het eigenlijke bestandsextensie voor dit formaat .xml is, kan het programma ook prima met XML-bestanden met de extensie .xls overweg. Deze functie wordt veelvuldig gebruikt door toepassingen van derden (bijv. MySQL Query Browser) om de mogelijkheid tot “exporteren naar Excel” te bieden zonder het binaire bestandsformaat te hoeven implementeren.

 

Het gebruik van andere Windows-toepassingen

 

Windows toepassingen zoals Microsoft Access en Microsoft Word, en ook Microsoft Excel kunnen met elkaar communiceren en van elkaars mogelijkheden gebruik maken. De meest voorkomende zijn:

Dynamic Data Exchange (DDE): hoewel door Microsoft sterk afgeraden, is dit een veelgebruikte methode om gegevens te versturen tussen applicaties die op Windows draaien, terwijl de officiële publicaties van Microsoft er naar verwijzen als “het protocol uit de hel”. Zoals de naam al doet vermoeden, stelt het applicaties in staat om gegevens naar elkaar te versturen voor berekeningen en weergave. Het wordt in de financiële markten veel gebruikt om verbinding te maken met belangrijke financiële datadiensten, zoals Bloomberg en Reuters.

 

Object Linking and Embedding (OLE): dit stelt een Windows-toepassing in staat om een andere te besturen om gegevens te kunnen formatteren of te berekenen. Dit kan in de vorm van “inbedding”, waarbij een toepassing een andere gebruikt om een taak uit te voeren waar deze beter geschikt voor is. Een PowerPoint-presentatie kan bijvoorbeeld in een Excel-spreadsheet worden ingebed of andersom.

 

Het gebruik van externe gegevens

 

Excel-gebruikers kunnen toegang krijgen tot externe gegevensbronnen via Microsoft Office-functies zoals (bijvoorbeeld) .odc verbindingen die zijn opgezet met het Office Data Connection bestandsformaat. Ook Excel-bestanden zelf kunnen worden bijgewerkt met behulp van een door Microsoft meegeleverd ODBC-stuurprogramma.

 

Excel kan de gegevens in real time ontvangen via verschillende programmeer-interfaces, die het mogelijk maken om met een groot aantal gegevensbronnen te communiceren zoals Bloomberg en Reuters (via invoegtoepassingen zoals Power Plus Pro).

 

  • DDE: “Dynamic Data Exchange” maakt gebruikt van het “message passing” mechanisme van Windows om gegevensstromen tussen Excel en andere toepassingen mogelijk te maken. Hoewel het voor gebruikers gemakkelijk is om dergelijke koppelingen te maken, is het betrouwbaar programmeren van dat soort links zo moeilijk dat Microsoft, de makers van het systeem, er officieel naar verwijst als “het protocol uit de hel”. Ondanks de vele problemen blijft DDE de meest gebruikelijke manier waarop gegevens naar handelaren in de financiële markten worden verstuurd.

  • Network DDE: Een uitbreiding van het protocol om spreadsheets op verschillende computers in staat te stellen gegevens uit te wisselen. Vanaf Windows Vista ondersteunt Microsoft deze mogelijkheid niet langer.

  • Real Time Data:. hoewel RTD in veel opzichten technisch superieur is aan DDE, is het maar langzaam geaccepteerd geraakt, omdat het meer vereist dan simpele programmeervaardigheden, en toen het voor het eerst werd uitgebracht was het onvoldoende gedocumenteerd, en miste het ondersteuning van de belangrijkste gegevensleveranciers.

Als alternatief biedt Microsoft Query op ODBC gebaseerd zoeken in Microsoft Excel.

 

Export en migratie van spreadsheets

 

Programmeurs hebben API’s gemaakt om Excel spreadsheets open te stellen voor een groot aantal toepassingen en omgevingen, anders dan Microsoft Excel. Dit zijn onder andere het openen van Excel-documenten op het web met behulp van ActiveX-besturingselementen of plug-ins zoals de Adobe Flash Player. Het opensource project Apache POI stelt Java-bibliotheken beschikbaar voor het lezen en schrijven van Excel spreadsheet-bestanden. ExcelPackage is nog zo’n opensource project dat mogelijkheden biedt tot het op afstand op de server maken van Microsoft Excel 2007 spreadsheets. PHPExcel is een PHP-bibliotheek die documenten in Excel5, Excel 2003 en Excel 2007-formaat omzet naar objecten voor het lezen en schrijven binnen een webapplicatie. Excel Services is een actuele .NET ontwikkeltool die de mogelijkheden van Excel kan verbeteren. Excel spreadsheets kunnen vanuit Python worden benaderd met xlrd en openpyxl. Vanuit JavaScript kunnen Excel-spreadsheets worden geopend met js-xlsx en js-xls.

 

Meer lezen over Microsoft Excel? Klik hier voor hoofdstuk 2, hoofdstuk 4 of hier om terug te keren naar de homepagina van onze FlorijnWiki-pagina’s.

Martijn Wijnen

Martijn Wijnen

Leave a Reply

Your email address will not be published. Required fields are marked *

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Add Your Heading Text Here

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.