Workbook Info voor Excel | metagegevens via aangepaste functies
Inhoud
- Wat is Workbook Info voor Excel
- Sleutelfuncties
- Waarom Workbook Info gebruiken
- Installatie-instructies
- Instructies
- Functieverwijzing
- Wijzigingsgeschiedenis
- Dankbetuigingen
Wat is Workbook Info voor Excel
Workbook Info voor Excel is een gratis invoegtoepassing die werkmap-, werkblad-, tabel-, grafiek-, draaitabel-, segment- en naammetagegevens beschikbaar maakt via gebruikersgedefiniëerde functies en Excel-gegevenstypen voor entiteiten.
De functies zijn bedoeld voor het maken van live documentatie, controlebladen en werkmapdiagnostiek, rechtstreeks in het raster.
Sleutelfuncties
- Gebruikersgedefiniëerde functies die de volgende metagegevens
geven:
- Van de werkmap (naam, auteur, opslagdatum, aantal query's, aantal externe koppelingen)
- Van werkbladen (gebruikt bereik, gebruikte rijen/kolommen, beveiligingsstatus, tabkleur, zichtbaarheid)
- Van objecten voor tabellen, grafieken, draaitabellen, segmenten en gedefinieerde namen
- INFO-functies die Excel-gegevenstypen voor entiteiten retourneren
- Eigenschappen van entiteiten zijn toegankelijk met puntnotatie
(bijvoorbeeld
=A1.usedRange) of metFIELDVALUE - Tabblad Acties in het taakvenster: een demo-/inhoudsopgavewerkblad invoegen en de werkmap opnieuw berekenen
- Geneste verzamelingen op werkmap- en werkbladentiteiten (bijvoorbeeld
worksheets/worksheetCount,tables/tableCount)
Waarom Workbook Info gebruiken
- Documenteer snel de interne opbouw van werkmappen, rechtstreeks in uw celraster met functies, zonder VBA of Office Scripts
- Maak formulegestuurde controlebladen die live blijven als de werkmapstructuur verandert
- Gebruik één consistente interface voor metagegevens in Excel voor desktop en Excel voor het web
Voorbeeld:
=JKP.WORKBOOKINFO()
Installatie-instructies
Excel voor web en Teams
Installeer Workbook Info(Teams, Web Excel) nu
Er wordt een nieuw Excel-bestand in je browser geopend met deze informatie:

Klik op de knop "Accept and Continue" in het taakvenster om de add-in te gebruiken. Na het klikken is Workbook Info ook beschikbaar in Excel binnen Teams.
Handmatige installatie
Als de knop niet werkt, open dan een Excel-bestand in je browser en klik op de add-ins knop. Zoek daarna op Workbook Info:

Klik op Add om de add-in toe te voegen aan Web Excel.
Desktop Excel
Installeer Workbook Info (Desktop Excel) nu
Na het klikken op die knop vraagt de browser toestemming om Excel te openen. Klik op Openen en Excel start en toont dit:

Klik op de knop "Accept and Continue" in het taakvenster om de add-in te gebruiken.
Handmatige installatie
Als de knop hierboven niet werkt, kun je de tool ook installeren door Excel te openen en op Add-ins te klikken (op het tabblad Start). Zoek daarna op "Workbook Info":

Om Workbook Info toe te voegen aan Excel, klik je op de knop Add/Toevoegen.
Instructies
Open het taakvenster van de invoegtoepassing om een lijst met functies en hun uitleg te krijgen door op het tabblad Formules op de knop Workbook Info te klikken:
Taakvenster
Als u op de knop klikt, wordt het taakvenster geopend. Het heeft drie tabbladen:
Tabblad Referentie

Dit tabblad toont de functiereferentie. Als u op een functie klikt,
wordt een kaart weergegeven met informatie over de functie.
Tabblad Acties

Het tabblad Acties biedt momenteel twee dingen:
- Een demowerkblad invoegen dat als begin van een inhoudsopgave kan dienen:
- Een knop die alle formules opnieuw laat berekenen, zodat de in de cache opgeslagen objectnamen die door de functies worden geretourneerd, worden bijgewerkt.
Tabblad Instellingen
Het tabblad Instellingen bevat een taalwisselaar met de optie Automatisch. Automatisch volgt de taal van de Excel-app voor de taakvensterinterface. Deze schakelaar verandert functienamen of de taal van functiebeschrijvingen niet, en de taal van het lint wordt bepaald door de taal van de Excel-app.
De functies gebruiken
Alle functies in deze invoegtoepassing beginnen met het voorvoegsel JKP. Typ eenvoudig =JKP. in een cel en de lijst met automatisch aanvullen toont ze. De invoegtoepassing heeft twee groepen functies: gewone functies en functies voor gegevenstypen.
Gewone functies
De gewone functies accepteren vaak een argument. Parameters voor werkbladselectie accepteren een bladnaam of een index vanaf 1. Als u het argument weglaat, gebruiken de functies het werkblad waarin de formule staat.
Functies voor gegevenstypen (INFO-functies)
Functies die eindigen op INFO retourneren gegevenstypen. Daardoor kunt u eenvoudig gedetailleerde informatie over het betreffende gegevenstype ophalen. Hieronder ziet u een schermopname van het resultaat van =JKP.WORKBOOKINFO() in een cel:

Als u op het kleine pictogram in de cel klikt, wordt een kaart geopend.
Binnen in de kaart kunnen knoppen naast onderdelen verschijnen, zodat u die informatie in het raster kunt plaatsen:

U kunt ook informatie uit een cel met een gegevenstype ophalen door in een formule naar die cel te verwijzen en een punt te typen:

De functies ondersteunen dynamische matrixen. Sommige functies retourneren een matrix met onderdelen, zoals JKP.WORKSHEETS. U kunt volgende functies naar die matrix laten verwijzen en Excel begrijpt dat.
Let op: deze functies zijn NIET vluchtig. Als
werkmapgegevens veranderen, worden ze niet automatisch bijgewerkt. Druk
op Ctrl+Alt+Shift+F9 om een vernieuwing af te dwingen, of gebruik het
tabblad Acties in het taakvenster en klik op
Opnieuw berekenen. U kunt ook in de hele werkmap Zoeken
en vervangen uitvoeren, bijvoorbeeld JKP. vervangen door
JKP..
Functiereferentie
Functies zijn gegroepeerd per categorie. Elke tabel bevat de functienaam, beschrijving, syntaxis, parameters en foutgedrag. Voor INFO-functies bevat de beschrijving de beschikbare eigenschappen van het Excel-gegevenstype voor entiteiten.
Werkmapfuncties
JKP.WORKBOOKworksheetCount,
tableCount, chartCount,
pivotTableCount, slicerCount,
nameCount, queryCount,
en externalLinkCount.JKP.WORKBOOK()JKP.WORKBOOKINFOEigenschappen van entiteit:
name, author, lastSavedBy,
lastSaveTime, creationDate,
worksheetCount, worksheets,
tableCount, tables,
pivotTableCount, pivotTables,
slicerCount, slicers,
chartCount, charts,
nameCount, names,
queryCount, queries (queries[*]
heeft name, error,
refreshDate, rowsLoadedCount,
loadedTo, loadedToDataModel),
externalLinkCount, externalLinks
(externalLinks[*] heeft id
(URL))JKP.WORKBOOKINFO()Werkbladfuncties
JKP.WORKSHEETSJKP.WORKSHEETS()JKP.WORKSHEETJKP.WORKSHEET([nameOrIndex])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.OFFSETSHEETJKP.OFFSETSHEET(offset)- #NUM!: Buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.USEDRANGEJKP.USEDRANGE([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.USEDROWSJKP.USEDROWS([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.USEDCOLUMNSJKP.USEDCOLUMNS([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.PROTECTEDJKP.PROTECTED([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.WORKSHEETINFOEigenschappen van entiteit:
name, usedRange,
usedRows, usedColumns,
protected, tabColor, visibility,
tableCount, tables,
chartCount, charts,
pivotTableCount, pivotTables,
slicerCount, slicers,
nameCount, namesJKP.WORKSHEETINFO([nameOrIndex])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
Tabelfuncties
JKP.TABLES#N/A! terug wanneer er geen overeenkomende
items zijn voor de gevraagde bovenliggende context
(bijvoorbeeld geen tabellen op dat werkblad).JKP.TABLES([blad])- #N/A: Benoemd item bestaat niet
- #N/A!: Geen items gevonden voor de gevraagde bovenliggende context (bijvoorbeeld geen tabellen op dat werkblad)
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.TABLEROWSJKP.TABLEROWS(tableName)- #N/A: Tabel bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.TABLECOLUMNSJKP.TABLECOLUMNS(tableName)- #N/A: Tabel bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.TABLEADDRESSJKP.TABLEADDRESS(tableName)- #N/A: Tabel bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.TABLECOMMENTJKP.TABLECOMMENT(tableName)- #N/A: Tabel bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.TABLEINFOEigenschappen van entiteit:
name, worksheet,
rowCount, columnCount,
address, commentJKP.TABLEINFO(tableName)- #N/A: Tabel bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.TABLESINFOEigenschappen van entiteit:
name, worksheet,
rowCount, columnCount,
address, comment (één entiteit
per rij in het uitvloeiende resultaat)JKP.TABLESINFO([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
Grafiekfuncties
JKP.CHARTSBlad::ChartName. Geeft #N/A!
terug wanneer er geen overeenkomende items zijn
voor de gevraagde bovenliggende context (bijvoorbeeld
geen grafieken op dat werkblad).JKP.CHARTS([blad])- #N/A: Benoemd item bestaat niet
- #N/A!: Geen items gevonden voor de gevraagde bovenliggende context (bijvoorbeeld geen grafieken op dat werkblad)
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.CHARTTYPEJKP.CHARTTYPE(chartName)- #N/A: Grafiek bestaat niet
- #VALUE!: Dubbelzinnige grafieknaam; meer dan één grafiek heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.CHARTTITLEJKP.CHARTTITLE(chartName)- #N/A: Grafiek bestaat niet
- #VALUE!: Dubbelzinnige grafieknaam; meer dan één grafiek heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.SERIESCOUNTJKP.SERIESCOUNT(chartName)- #N/A: Grafiek bestaat niet
- #VALUE!: Dubbelzinnige grafieknaam; meer dan één grafiek heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.CHARTINFOEigenschappen van entiteit:
chartId, name, worksheet,
chartType, title,
seriesCount, topLeftCellJKP.CHARTINFO(chartName)- #N/A: Grafiek bestaat niet
- #VALUE!: Dubbelzinnige grafieknaam; meer dan één grafiek heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.CHARTSINFOEigenschappen van entiteit:
chartId, name, worksheet,
chartType, title,
seriesCount, topLeftCell
(één entiteit per rij in het uitvloeiende resultaat)JKP.CHARTSINFO([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
Draaitabelfuncties
JKP.PIVOTTABLESBlad::PivotName.
Geeft #N/A! terug wanneer er geen overeenkomende
items zijn voor de gevraagde bovenliggende context
(bijvoorbeeld geen draaitabellen op dat werkblad).JKP.PIVOTTABLES([blad])- #N/A: Benoemd item bestaat niet
- #N/A!: Geen items gevonden voor de gevraagde bovenliggende context (bijvoorbeeld geen draaitabellen op dat werkblad)
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.PIVOTLOCATIONJKP.PIVOTLOCATION(pivot)Blad::PivotName;
accepteert ook één draaitabelnaam of een uitvloeiend
bereik van draaitabel-id's).- #N/A: Draaitabel bestaat niet
- #VALUE!: Dubbelzinnige draaitabelnaam; meer dan één draaitabel heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.PIVOTSOURCEJKP.PIVOTSOURCE(pivot)Blad::PivotName;
accepteert ook één draaitabelnaam of een uitvloeiend
bereik van draaitabel-id's).- #N/A: Draaitabel bestaat niet
- #VALUE!: Dubbelzinnige draaitabelnaam; meer dan één draaitabel heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.PIVOTSOURCETYPELocalRange, LocalTable,
of Onbekend terug.JKP.PIVOTSOURCETYPE(pivot)Blad::PivotName;
accepteert ook één draaitabelnaam of een uitvloeiend
bereik van draaitabel-id's).- #N/A: Draaitabel bestaat niet
- #VALUE!: Dubbelzinnige draaitabelnaam; meer dan één draaitabel heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.PIVOTINFOEigenschappen van entiteit:
pivotId, name, worksheet,
id, locationAddress,
filterAxisAddress, rowLabelsAddress,
columnLabelsAddress, dataBodyAddress,
sourceType, source,
allowMultipleFiltersPerField,
enableDataValueEditing, refreshOnOpen,
useCustomSortLists, layoutType,
showRowGrandTotals, showColumnGrandTotals,
showFieldHeaders, preserveFormatting,
subtotalLocationJKP.PIVOTINFO(pivot)Blad::PivotName;
accepteert ook één draaitabelnaam of een uitvloeiend
bereik van draaitabel-id's).- #N/A: Draaitabel bestaat niet
- #VALUE!: Dubbelzinnige draaitabelnaam; meer dan één draaitabel heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.PIVOTSINFOEigenschappen van entiteit:
pivotId, name, worksheet,
locationAddress, sourceType,
source (één entiteit per rij in het
uitvloeiende resultaat)JKP.PIVOTSINFO([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
Segmentfuncties
JKP.SLICERSBlad::SlicerName.
Geeft #N/A! terug wanneer er geen overeenkomende
items zijn voor de gevraagde bovenliggende context
(bijvoorbeeld geen segmenten op dat werkblad).JKP.SLICERS([blad])- #N/A: Benoemd item bestaat niet
- #N/A!: Geen items gevonden voor de gevraagde bovenliggende context (bijvoorbeeld geen segmenten op dat werkblad)
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
JKP.SLICERITEMSJKP.SLICERITEMS(slicer)Blad::SlicerName;
accepteert ook één segmentnaam of een uitvloeiend
bereik van segment-id's).- #N/A: Segment bestaat niet
- #VALUE!: Dubbelzinnige segmentnaam; meer dan één segment heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.SLICERINFOitems (indien
beschikbaar) is een verzameling van ITEMINFO-entiteiten
(elk item heeft name en selected;
selected kan leeg zijn voor segmenttypen/hosts
waarbij selectiestatus niet beschikbaar is).Eigenschappen van entiteit:
slicerId, name,
worksheet, id, caption,
topLeftCell, left,
top, width, height,
style, sortBy, isFilterCleared,
itemCount, items (items[*]
is ITEMINFO met name,
selected)JKP.SLICERINFO(slicer)Blad::SlicerName;
accepteert ook één segmentnaam of een uitvloeiend
bereik van segment-id's).- #N/A: Segment bestaat niet
- #VALUE!: Dubbelzinnige segmentnaam; meer dan één segment heeft dezelfde naam
- #VALUE!: Verkeerd argumenttype
JKP.SLICERSINFOitems/itemCount
opzettelijk niet is opgenomen. Roep JKP.SLICERINFO()
(of JKP.SLICERITEMS()) aan wanneer
je segmentitems nodig hebt.Eigenschappen van entiteit:
slicerId, name,
worksheet, caption, style,
isFilterCleared, topLeftCell
(één entiteit per rij in het uitvloeiende resultaat)JKP.SLICERSINFO([blad])- #N/A: Benoemd item bestaat niet
- #NUM!: Index buiten bereik
- #VALUE!: Verkeerd argumenttype
Functies voor gedefinieerde namen
JKP.NAMES#N/A! terug wanneer
er geen overeenkomende items zijn voor de gevraagde
bovenliggende context (bijvoorbeeld geen namen in
dat bereik).JKP.NAMES([scopeOrSheet])- #N/A: Blad bestaat niet
- #N/A!: Geen items gevonden voor de gevraagde bovenliggende context (bijvoorbeeld geen namen in dat bereik)
- #VALUE!: Verkeerd argumenttype
JKP.NAMEREFERSJKP.NAMEREFERS(name)- #N/A: Naam bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.NAMETYPEJKP.NAMETYPE(name)- #N/A: Naam bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.NAMEVISIBLEJKP.NAMEVISIBLE(name)- #N/A: Naam bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.NAMECOMMENTJKP.NAMECOMMENT(name)- #N/A: Naam bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.NAMEINFOEigenschappen van entiteit:
name, formula, value,
type, visible, comment,
scope, sheetJKP.NAMEINFO(name)- #N/A: Naam bestaat niet
- #VALUE!: Verkeerd argumenttype
JKP.NAMESINFOEigenschappen van entiteit:
name, formula, value,
type, visible, comment,
scope, sheet (één entiteit
per rij in het uitvloeiende resultaat)JKP.NAMESINFO([scopeOrSheet])- #N/A: Blad bestaat niet
- #VALUE!: Verkeerd argumenttype
Wijzigingsgeschiedenis
- Build 1.0.0.0, 2026-04-27: Eerste release
Dankbetuigingen
Workbook Info is ontwikkeld door Jan Karel Pieterse (JKP Application Development Services).
Dank aan gebruikers en testers die feedback hebben gegeven over formules, entiteitsgedrag en UX van het taakvenster.

Opmerkingen