Spring naar inhoud

04.6 Excel

Met de Excel-component kun je een volledig werkblad op Excel in één keer inladen op een standaard-pagina onder een hoofdstuk. Wanneer je de juiste syntax gebruikt in het Excel-bestand wordt de inhoud van het Excel-bestand omgezet naar componenten zoals tabellen en alinea's.

Het Excel-bestand

Uitleg over de opbouw van het Excel-bestand

Tip!

Download het Excel-bestand onderaan deze pagina om te zien hoe alle mogelijkheden van het Excel-component kunnen worden toegepast.

Met de Excel-component kan data van onderstaande componenten worden uitgelezen. Gebruik hiervoor de sleutel zoals deze naast de naam staat aangegeven. 

  • Alinea met r.paragraph (of iwink.paragraph)
  • Tabel met r.table (of iwink.table)
  • Titel met  r.title  (of iwink.title)
  • Afbeelding met r.image (of iwink.image)
  • Pagina-einde (PDF) met r.page_break (iwink.page_break)
  • Witruimte met r.whitepace (of iwink.whitespace)

Tussen blokhaken kunnen instellingen van de betreffende component worden ingesteld.

Data

De volgende componenten hebben data die vanuit de Excel kan worden ingelezen:

Alinea (r.paragraph)

  • title (of titel): De titel van de alinea
  • content (of inhoud): De inhoud van de alinea
  • content [md]: De inhoud van een alinea waar je ook markdown in wil toepassen. Zie hieronder
  • list-start (of lijst start): Eerste bullet voor een opsomming (bevat mogelijkheid tot genummerde lijst d.m.v. "list start [type:ol]")
  • list-end (of lijst eind): Laatste bullet voor een opsomming (laat deze leeg wanneer je een opsomming hebt van 1 regel)
Markdown

Je kunt naast de 'inhoud' van een alinea ook markdown gebruiken. Zo worden streepjes bijvoorbeeld gebruikt voor (geneste) lijsten.

Bekijk hier de codes die je kunt gebruiken om markdown toe te passen.

Om dit te activeren gebruik content [md] of inhoud [md] of content [markdown]  of inhoud [markdown] om de inhoud te starten.

Tabel (r.table)

  • title (of titel): De titel van de tabel
  • intro of intro [md]  (of introductie): De introductie boven de tabel
  • heading (of koptekst): De koptekst boven de tabel
  • start (of tabel start): De eerste rij waarop de tabulaire informatie start 
  • end (of tabel eind): De laatste rij waarop de tabulaire informatie eindigd
  • footer of footer [md] (of voettekst): De voettekst onder de tabel
  • note of note [md] (of afsluitende tekst): De afsluitende tekst onder de tabel

Titel (r.title)

  • title (of titel): De titel van de titel-component

Afbeelding (r.image)

  • title: Titel van de afbeelding
  • content (of afbeelding): De afbeelding zelf, plak hiervoor een afbeelding in de cel van Excel
  • titel: Het bijschrift van de afbeelding

Pagina Einde (r.page_break)

De component 'Pagina-einde' wordt gebruikt voor de PDF-versie van je verslag. Hiermee forceer je dat een bepaald component op een nieuwe pagina in de PDF moet beginnen. Dit kun je bijvoorbeeld gebruiken wanneer je in de PDF een tekstblok hebt waarvan alleen de titel of alleen de eerste regel nog op een bladzijde past en de rest van de tekst op de volgende bladzijde verder gaat.

Instellingen

Met instellingen kunnen bepaalde instellingen van het component worden aangepast. 

Deze kunnen als volgt worden geformuleerd:

  • Tussen blokhaken, bijvoorbeeld: r.paragraph [h:2]
  • In de eerste cel onder de aanroep (bijv. r.paragraph), bijvoorbeeld setting.status:published of setting.h:2

De volgende componenten hebben instellingen:

Alinea (r.paragraph)

  • status: offline of published 
    • setting.status:published
    • setting.status:offline
  • h: Het koptype (Opties: 2, 3, 4, 5 of 6)
  • avoid-break (of pdf-avoid-break): Probeert te voorkomen dat de alinea over meerdere pagina's of kolommen zal vallen in de PDF
  • all-columns (pdf-all-columns): Toont de alinea over alle kolommen in de PDF (alleen van toepassing wanneer de PDF meerdere kolommen bevat)

Voorbeeld: r.paragraph [h:3 avoid-break]

Tabel (r.table)

  • status: offline of published 
    • setting.status:published
    • setting.status:offline
  • h: Het koptype (Opties: 2, 3, 4, 5 of 6)
  • width: De breedte van de component (Opties: 50, 67, 75, 100 of 125)
  • cw: Voor de procentuele breedte van de kolommen in een tabel (opties: xx-xx-xx)
  • mark-border: Voor het wel of niet markeren van alle rijen met celranden. Indien niets ingevuld wordt de standaard gebruikt. (opties mark-border:Y, mark-border:N)
  • mark-row: voor het arceren van de even of oneven rijen in een tabel
  • mark-col: voor het arceren van de even of oneven kolommen in een tabel
  • head: Het aantal rijen wat als header getoond moet worden (Opties: 0, 1 of 2)
  • font: De lettergrootte (Opties: +2, +1, 0, -1, -2 of -3)
  • font-pdf: De lettergrootte voor de PDF (Opties: +2, +1, 0, -1, -2 of -3)
  • all-columns (of pdf-all-columns): Toont de tabel over alle kolommen in de PDF (alleen van toepassing wanneer de PDF meerdere kolommen bevat)
  • break-page (of pdf-break-page): Voeg dit toe wanneer je een hoge tabel hebt die over meerdere pagina's in de PDF mag vallen
  • col (of col): Vul hier het aantal kolommen dat de kolom bevat.

Voorbeeld: r.table [col:3 cw:45-5-45 head:1, h:3 mark-border:N break-page]

Dit is een tabel met 3 kolommen, kolom 1 en 3 45% breed, de eerste rij wordt als celkop getoond, de rijen krijgen geen celranden, tabel mag in de PDF over meerdere pagina's breken. 

Titel

  • status: offline of published
    • setting.status:published
    • setting.status:offline
  • h: Het koptype (Opties: 2, 3, 4, 5 of 6)
  • all-columns (of pdf-all-columns): Toont de tabel over alle kolommen in de PDF (alleen van toepassing wanneer de PDF meerdere kolommen bevat

Witruimte

  • status: offline of published
  • height: De hoogte van de witruimte t.o.v. de schermhoogte (Opties: ieder 5-tal tussen de 0 en 100)

Bereik en uit te lezen kolom van een werkblad opgeven

Range (bereik binnen een tabblad) r.start en r.end

Standaard gaat het Excel component ervan uit dat alle gegevens op een tabblad met iwink.report codering worden uitgelezen en getoond.

Het is ook mogelijk om slechts een specifiek bereik binnen een werkblad uit te laten lezen. Dit doe je met r.start en r.end. Deze sleutels geven het begin en einde aan van het bereik dat door het Excel component wordt opgehaald.

Plaats r.start en r.end in dezelfde kolom als waarin ook de iwink.report codering staat. Alle rijen tussen deze twee sleutels worden meegenomen in de uitlezing.

Gebruik hiervoor de volgende sleutels:

  • r.start [range:iets] (of op de oude manier: iwink.start [label:pagina_1])
  • r.end [range:iets] (of op de oude manier: iwink.end [label:pagina_1])

De waarde die je gebruikt als range, in het voorbeeld “iets”, moet exact gelijk worden ingevuld in het Excel component bij het veld Range.

Binnen één werkblad kunnen meerdere ranges worden aangemaakt. Deze ranges kunnen vervolgens afzonderlijk vanuit het CMS op een pagina worden ingesteld om uit te lezen. Dit maakt het mogelijk om binnen een pagina met veel Excel content ook andere componenten te plaatsen, zoals een grafiek, kerncijfer of een ander type component, zonder het tabblad op te splitsen.

Voorbeeld van hoe je een range instelt. Deze moet in Excel nog worden aangevuld met "r.end [range:GS_algemeen]" om het einde van de range vast te stellen.

Kolom - r.column (of op oude manier iwink.column)

Standaard gaat het Excel component ervan uit dat:

  • dat de iwink.report codering in kolom A staat
  • dat de publicatiegegevens  in kolom B en verder staan

Als dit bij jullie zo is en je gebruikt geen meertaligheid, dan hoef je r.column niet te gebruiken.

Met r.column kun je instellen in welke kolom de codering staat en vanaf welke kolom de publicatiegegevens beginnen. Plaats r.column in een van de eerste 5 rijen van de betreffende kolom, bij voorkeur in rij 1.

1. codering staat niet in kolom A en de publicatiegegevens staan direct rechts van de coderingskolom
Oplossing: plaats r.column in de coderingskolom, bijvoorbeeld kolom F. iwink.report leest dan de codering uit kolom F en de publicatiegegevens uit kolom G en verder.

2. codering staat niet in kolom A en de publicatiegegevens beginnen in kolom A of een andere kolom
Oplossing: plaats r.column [start:A] in de coderingskolom, bijvoorbeeld kolom F. iwink.report leest dan de codering uit kolom F en de publicatiegegevens uit kolom A en verder.

3. codering staat in kolom A en de publicatiegegevens beginnen in een andere kolom
Oplossing: plaats r.column [start:F] in kolom A. iwink.report leest dan de publicatiegegevens uit kolom F en verder.

4. meertaligheid in hetzelfde tabblad, data staat per taal in een eigen blok direct rechts van de coderingskolom. 
Voorbeeld: NL in kolom B en verder, DE in kolom L en verder, codering staat direct links van de data.
Oplossing: plaats r.column [label:NL] in kolom A en r.column [label:DE] in kolom K. Vul in het Excel component op de NL pagina bij Column het label NL in en op de DE pagina het label DE.

5. meertaligheid in hetzelfde tabblad, data staat per taal in een eigen blok maar de codering staat niet direct links van de data. 
Voorbeeld: NL data start in kolom B, DE data start in kolom L, NL codering staat in kolom W, DE codering staat in kolom Z.
Oplossing: plaats r.column [label:NL start:B] in kolom W en r.column [label:DE start:L] in kolom Z. Vul in het Excel component op de NL pagina bij Column het label NL in en op de DE pagina het label DE.

Een voorbeeld uit Excel waarbij een gedeelte van het werkblad uitgelezen zal worden

De kolom waarin de sleutel iwink.column staat wordt gebruikt om alle data en instellingen uit te lezen. Zo kun je bijvoorbeeld ook kolom H gebruiken voor het uitlezen i.p.v. kolom A (standaard)

Een component wel of niet publiceren

In sommige gevallen wil je gemakkelijk een onderdeel in je publicatie wel of niet tonen. Zo kan het zijn dat je in de ene maand-rapportage een bepaald overzicht wel wil tonen, maar een andere maand niet. Om te voorkomen dat je gegevens elke keer moet verwijderen en weer toevoegen kun je gemakkelijk met 1 functie een bepaald component wel of niet opnemen in een pubblicatie. Hier zijn 2 mogelijkheden voor:

  1. Je voegt een 'Selectievakje' direct onder de aanroep van het component 
  2. Je voegt de tekst "setting.status:published" of "setting.status:offline" toe direct onder de aanroep van het component

1 - Selectievakje

Als je een selectievakje toevoegt en deze is aangevinkt zal het component getoond worden. Is deze niet aangevinkt dan wordt dit component overgeslagen. Lees hier https://support.microsoft.com/nl-nl/office/selectievakjes-gebruiken-in-excel-da85546d-c110-49b8-b633-9cebadcaf8d4 hoe je een selectievakje in Excel toevoegt.

2 - Met tekst setting.status:published"/ "setting.status:offline

Als je met de tekstvariant werkt is het handig om deze in een uitklaplijstje te zetten. Hoe je dat doet kun je o.a. in deze (externe) video bekijken: https://www.youtube.com/watch?v=or9SssSter0

Resultaat voorbeeldbestand

De Excel-component

Uitleg over gebruik van de Excel-component in het CMS

Om de Excel-component toe te voegen selecteer je 'Excel' uit de component-balk.

De titel in de component is optioneel, net als het veld 'Bereik label'. Deze label moet overeenkomen met de label die je in de sleutel iwink.start en iwink.eind hebt opgegeven. In het voorbeeld hierboven zou dat deel_1 zijn.

Vervolgens worden de ingeladen delen uit Excel als onderliggend component van de Excel-component getoond. Deze zijn readonly en geven een impressie welke data er getoond wordt. Ververs de pagina op de voorkant om te zien hoe je Excel-bestand is uitgelezen.