Workbook Info para Excel | metadatos mediante funciones personalizadas
Contenido
- Qué es Workbook Info para Excel
- Características clave
- Por qué usar Workbook Info
- Instrucciones de instalación
- Instrucciones
- Referencia de funciones
- Historial de cambios
- Créditos
Qué es Workbook Info para Excel
Workbook Info para Excel es un complemento gratuito que expone metadatos del libro, la hoja, la tabla, el gráfico, la tabla dinámica, la segmentación y los nombres mediante funciones personalizadas de solo lectura y tipos de datos Entidad de Excel.
Las funciones son de solo lectura y están diseñadas para crear documentación viva, hojas de auditoría y diagnósticos de libros directamente en la cuadrícula.
Características clave
- Funciones personalizadas que devuelven:
- Metadatos a nivel de libro (nombre, autor, fecha de guardado, recuento de consultas y recuento de vínculos externos)
- Metadatos de hoja (rango usado, filas/columnas usadas, estado de protección, color de pestaña y visibilidad)
- Metadatos de objetos para tablas, gráficos, tablas dinámicas, segmentaciones y nombres definidos
- Funciones INFO que devuelven valores de Entidad de Excel
- Se puede acceder a las propiedades de Entidad con notación de punto
(por ejemplo
=A1.usedRange) o conFIELDVALUE - Colecciones anidadas en entidades de libro y hoja (por ejemplo
worksheets/worksheetCount,tables/tableCount) - Pestaña Acciones del panel de tareas: insertar una hoja de demostración / tabla de contenido y recalcular el libro
Por qué usar Workbook Info para Excel
- Documentar rápidamente el interior del libro directamente en la cuadrícula de celdas usando funciones, sin VBA ni Office Scripts
- Crear hojas de auditoría basadas en fórmulas que se mantengan vivas cuando cambie la estructura del libro
- Usar una interfaz de metadatos coherente tanto en Excel de escritorio como en Excel para la web
Ejemplo:
=JKP.WORKBOOKINFO()
Instrucciones de instalación
Instrucciones
Abra el panel de tareas del complemento para obtener una lista de funciones y sus explicaciones haciendo clic en la pestaña Fórmulas, botón Workbook Info:
Panel de tareas
Al hacer clic en el botón se abre el panel de tareas. Tiene tres pestañas:
Pestaña Referencia

Esta pestaña muestra la referencia de funciones. Al hacer clic en una función
aparece una tarjeta con información sobre esa función.
Pestaña Acciones

La pestaña Acciones permite actualmente dos cosas:
- Insertar una hoja de demostración que puede servir como inicio de una tabla de contenido:
- Un botón que fuerza el recálculo de todas las fórmulas, actualizando así los nombres de objetos en caché que devuelven las funciones.
Pestaña Configuración
La pestaña Configuración contiene un selector de idioma con una opción Automático. Automático sigue el idioma de la aplicación Excel para la interfaz del panel de tareas. Este selector no cambia los nombres de las funciones ni el idioma de sus descripciones, y el idioma de la cinta lo controla el idioma de la aplicación Excel.
Cómo usar las funciones
Todas las funciones de este complemento comienzan con el prefijo JKP. Simplemente escriba =JKP. en una celda y la lista de autocompletar las mostrará. El complemento tiene dos grupos de funciones: funciones normales y funciones de tipo de datos.
Funciones normales
Todas las funciones de este complemento comienzan con el prefijo JKP. Simplemente escriba =JKP. en una celda y la lista de autocompletar las mostrará. El complemento tiene dos grupos de funciones: funciones normales y funciones de tipo de datos. Las funciones normales suelen aceptar un argumento. Los parámetros de selección de hoja aceptan un nombre de hoja o un índice basado en 1. Si se omite, las funciones usan la hoja que contiene la fórmula.
Funciones de tipo de datos (funciones INFO)
Las funciones que terminan en INFO devuelven tipos de datos, lo que facilita obtener información detallada del tipo de datos en cuestión. Aquí se muestra una captura del resultado de =JKP.WORKBOOKINFO() en una celda:

Al hacer clic en el pequeño icono de la celda se abre una tarjeta.
Dentro de la tarjeta pueden aparecer botones junto a los elementos, lo que permite llevar esa información a la cuadrícula:

También puede recuperar información de una celda de tipo de datos haciendo referencia a esa celda en una fórmula y pulsando el punto:

Las funciones son compatibles con matrices dinámicas. Algunas funciones devuelven una matriz de elementos (como JKP.WORKSHEETS). Puede apuntar funciones posteriores a esa matriz y Excel la interpretará correctamente.
Tenga en cuenta que estas funciones NO son volátiles.
Si cambian los datos del libro, no se actualizan automáticamente. Para forzar
una actualización, pulse Control+Alt+Mayús+F9 (o use la pestaña Acciones
del panel de tareas y haga clic en Recalcular). Como alternativa,
haga un buscar y reemplazar en todo el libro (por ejemplo, reemplace JKP. por
JKP.).
Referencia de funciones
Las funciones se agrupan por categoría. Cada tabla muestra el nombre de la función, la descripción, la sintaxis, los parámetros y el comportamiento de error. En las funciones INFO, la descripción incluye las propiedades de entidad disponibles.
Funciones del libro
JKP.WORKBOOKJKP.WORKBOOK()JKP.WORKBOOKINFOPropiedades de entidad:
nombre, autor, últimosalvadopor, última hora de ahorro, fecha de creación, hoja de trabajoContar, hojas de trabajo, tablaRecuento, mesas, pivotTableCount, tablas dinámicas, rebanadorContar, cortadoras, gráficoContar, gráficos, nombreContar, nombres, consultaRecuento, consultas, consultas[*].nombre, consultas[*].error, consultas[*].refreshDate, consultas[*].rowsLoadedCount, consultas[*].loadedTo, consultas[*].loadedToDataModel, recuento de enlaces externos, Enlaces externos, Enlaces externos[*].idJKP.WORKBOOKINFO()Funciones de hoja de cálculo
JKP.WORKSHEETSJKP.WORKSHEETS()JKP.WORKSHEETJKP.WORKSHEET([nameOrIndex])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.OFFSETSHEETJKP.OFFSETSHEET(offset)- #NUM!: Fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.USEDRANGEJKP.USEDRANGE([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.USEDROWSJKP.USEDROWS([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.USEDCOLUMNSJKP.USEDCOLUMNS([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.PROTECTEDJKP.PROTECTED([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
JKP.WORKSHEETINFOPropiedades de entidad:
nombre, usadoRango, filas usadas, columnas usadas, protegido, pestañaColor, visibilidad, tablaRecuento, mesas, gráficoContar, gráficos, pivotTableCount, tablas dinámicas, rebanadorContar, cortadoras, nombreContar, nombresJKP.WORKSHEETINFO([nameOrIndex])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
Funciones de tabla
JKP.TABLESJKP.TABLES([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
- #N/A!: No se encontraron elementos para el padre solicitado (por ejemplo, no hay tablas en esa hoja de trabajo)
JKP.TABLEROWSJKP.TABLEROWS(tableName)- #N/A: La tabla no existe
- #VALOR!: tipo de argumento incorrecto
JKP.TABLECOLUMNSJKP.TABLECOLUMNS(tableName)- #N/A: La tabla no existe
- #VALOR!: tipo de argumento incorrecto
JKP.TABLEADDRESSJKP.TABLEADDRESS(tableName)- #N/A: La tabla no existe
- #VALOR!: tipo de argumento incorrecto
JKP.TABLECOMMENTJKP.TABLECOMMENT(tableName)- #N/A: La tabla no existe
- #VALOR!: tipo de argumento incorrecto
JKP.TABLEINFOPropiedades de entidad:
nombre, hoja de trabajo, recuento de filas, columnaContar, DIRECCIÓN, comentarioJKP.TABLEINFO(tableName)- #N/A: La tabla no existe
- #VALOR!: tipo de argumento incorrecto
JKP.TABLESINFOPropiedades de entidad:
nombre, hoja de trabajo, recuento de filas, columnaContar, DIRECCIÓN, comentario, (una entidad por fila en el resultado derramado)JKP.TABLESINFO([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
Funciones de gráfico
JKP.CHARTSJKP.CHARTS([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
- #N/A!: No se encontraron elementos para el padre solicitado (por ejemplo, no hay gráficos en esa hoja de trabajo)
JKP.CHARTTYPEJKP.CHARTTYPE(chartName)- #N/A: El gráfico no existe
- #VALOR!: nombre de gráfico ambiguo; más de un gráfico tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.CHARTTITLEJKP.CHARTTITLE(chartName)- #N/A: El gráfico no existe
- #VALOR!: nombre de gráfico ambiguo; más de un gráfico tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.SERIESCOUNTJKP.SERIESCOUNT(chartName)- #N/A: El gráfico no existe
- #VALOR!: nombre de gráfico ambiguo; más de un gráfico tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.CHARTINFOPropiedades de entidad:
ID del gráfico, nombre, hoja de trabajo, tipo de gráfico, título, serieContar, celda superior izquierdaJKP.CHARTINFO(chartName)- #N/A: El gráfico no existe
- #VALOR!: nombre de gráfico ambiguo; más de un gráfico tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.CHARTSINFOPropiedades de entidad:
ID del gráfico, nombre, hoja de trabajo, tipo de gráfico, título, serieContar, celda superior izquierda, (una entidad por fila en el resultado derramado)JKP.CHARTSINFO([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
Funciones de tabla dinámica
JKP.PIVOTTABLESJKP.PIVOTTABLES([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
- #N/A!: No se encontraron elementos para el padre solicitado (por ejemplo, no hay tablas dinámicas en esa hoja de trabajo)
JKP.PIVOTLOCATIONJKP.PIVOTLOCATION(pivot)- #N/A: la tabla dinámica no existe
- #VALOR!: nombre de tabla dinámica ambiguo; más de una tabla dinámica tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.PIVOTSOURCEJKP.PIVOTSOURCE(pivot)- #N/A: la tabla dinámica no existe
- #VALOR!: nombre de tabla dinámica ambiguo; más de una tabla dinámica tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.PIVOTSOURCETYPEJKP.PIVOTSOURCETYPE(pivot)- #N/A: la tabla dinámica no existe
- #VALOR!: nombre de tabla dinámica ambiguo; más de una tabla dinámica tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.PIVOTINFOPropiedades de entidad:
ID de pivote, nombre, hoja de trabajo, identificación, ubicaciónDirección, filtroEjeDirección, filaEtiquetasDirección, columnaEtiquetasDirección, datosCuerpoDirección, tipo de fuente, fuente, permitir múltiples filtros por campo, enableDataValueEdición, actualizar al abrir, utilizar listas de clasificación personalizadas, tipo de diseño, mostrarFilaGrandTotals, mostrarColumnaGrandTotals, mostrar encabezados de campo, preservarformato, subtotalUbicaciónJKP.PIVOTINFO(pivot)- #N/A: la tabla dinámica no existe
- #VALOR!: nombre de tabla dinámica ambiguo; más de una tabla dinámica tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.PIVOTSINFOPropiedades de entidad:
ID de pivote, nombre, hoja de trabajo, ubicaciónDirección, tipo de fuente, fuente, (una entidad por fila en el resultado derramado)JKP.PIVOTSINFO([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
Funciones de segmentación
JKP.SLICERSJKP.SLICERS([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
- #N/A!: No se encontraron elementos para el padre solicitado (por ejemplo, no hay segmentaciones en esa hoja de trabajo)
JKP.SLICERITEMSJKP.SLICERITEMS(slicer)- #N/A: La segmentación de datos no existe
- #VALOR!: nombre de segmentación ambiguo; más de una segmentación tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.SLICERINFOPropiedades de entidad:
ID de cortadora, nombre, hoja de trabajo, identificación, subtítulo, celda superior izquierda, izquierda, arriba, ancho, altura, estilo, Ordenar por, isFilterCleared, recuento de artículos, elementos, elementos[*].nombre, elementos[*].seleccionadosJKP.SLICERINFO(slicer)- #N/A: La segmentación de datos no existe
- #VALOR!: nombre de segmentación ambiguo; más de una segmentación tiene el mismo nombre
- #VALOR!: tipo de argumento incorrecto
JKP.SLICERSINFOPropiedades de entidad:
ID de cortadora, nombre, hoja de trabajo, subtítulo, estilo, isFilterCleared, celda superior izquierda, (una entidad por fila en el resultado derramado)JKP.SLICERSINFO([sheet])- #N/A: el elemento nombrado no existe
- #NUM!: Índice fuera de límites
- #VALOR!: tipo de argumento incorrecto
Funciones de nombres
JKP.NAMESJKP.NAMES([scopeOrSheet])- #N/A: La hoja no existe
- #N/A!: No se encontraron elementos para el padre solicitado (por ejemplo, no hay nombres en ese alcance)
- #VALOR!: tipo de argumento incorrecto
JKP.NAMEREFERSJKP.NAMEREFERS(name)- #N/A: El nombre no existe
- #VALOR!: tipo de argumento incorrecto
JKP.NAMETYPEJKP.NAMETYPE(name)- #N/A: El nombre no existe
- #VALOR!: tipo de argumento incorrecto
JKP.NAMEVISIBLEJKP.NAMEVISIBLE(name)- #N/A: El nombre no existe
- #VALOR!: tipo de argumento incorrecto
JKP.NAMECOMMENTJKP.NAMECOMMENT(name)- #N/A: El nombre no existe
- #VALOR!: tipo de argumento incorrecto
JKP.NAMEINFOPropiedades de entidad:
nombre, fórmula, valor, tipo, visible, comentario, alcance, hojaJKP.NAMEINFO(name)- #N/A: El nombre no existe
- #VALOR!: tipo de argumento incorrecto
JKP.NAMESINFOPropiedades de entidad:
nombre, fórmula, valor, tipo, visible, alcance, hoja, (una entidad por fila en el resultado derramado)JKP.NAMESINFO([scopeOrSheet])- #N/A: La hoja no existe
- #VALOR!: tipo de argumento incorrecto
Historial de cambios
- Build 1.0.4.0, 2026-06-04: Se eliminó la propiedad no compatible lastSaveTime del libro y se actualizaron metadatos/documentación relacionados.
- Build 1.0.3.0, 2026-06-04: Se corrigió el registro duplicado de funciones y la inserción de la hoja Demo/ToC.
- Build 1.0.2.0, 2026-05-21: Se actualizaron el manifiesto y los enlaces de ayuda de las funciones.
- Build 1.0.1.0, 2026-04-28: Se agregó localización completa (EN, NL, DE, FR, ES).
- Build 1.0.0.0, 2026-04-27: Primera versión
Créditos
Workbook Info está desarrollado por Jan Karel Pieterse (JKP Application Development Services).
Gracias a los usuarios y evaluadores que aportaron comentarios sobre las fórmulas, el comportamiento de las entidades y la experiencia de usuario del panel de tareas.

Comentarios