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
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,
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.4.0, 2026-06-04: Niet-ondersteunde werkmapeigenschap lastSaveTime verwijderd en gerelateerde metadata/documentatie bijgewerkt.
- Build 1.0.3.0, 2026-06-04: Dubbele functieregistratie opgelost en invoegen van het Demo-/ToC-blad hersteld.
- Build 1.0.2.0, 2026-05-21: Manifest en functieverwijzingen naar help bijgewerkt.
- Build 1.0.1.0, 2026-04-28: Volledige lokalisatie toegevoegd (EN, NL, DE, FR, ES).
- 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