Tablas de búsqueda en Revit: errores comunes y cómo evitarlos

Las tablas de búsqueda (tablas CSV) son una de las herramientas más útiles para crear familias en Revit, y también de las más fáciles de usar mal. Basta una comilla fuera de lugar, una columna en el orden equivocado o una codificación incorrecta para que todo falle, y los mensajes de error de Revit no siempre explican por qué. En este artículo repasamos los puntos donde más se tropieza.

Imagen de portada: cuadro de error de Revit y una tabla de búsqueda

Un recordatorio rápido de cómo funciona. Una tabla de búsqueda es un archivo CSV que se carga en una familia. La fórmula size_lookup() toma valores de los parámetros de tu familia, encuentra la fila que coincide en la tabla y devuelve los datos de la columna que le pidas.

Empezamos con los errores en la fórmula y después pasamos a los errores al armar la tabla. Esta es la estructura general de una fórmula que obtiene un valor desde una tabla de búsqueda:

Esquema de la fórmula size_lookup()

size_lookup() es el operador que llama a los valores de una tabla. Después viene una estructura fija. Y sí, no puedes equivocarte al escribir el nombre del operador.

Partes de la fórmula resaltadas

Errores en la fórmula

Referencia a la tabla

Hay dos formas de indicar la tabla. Puedes referenciar un parámetro de texto que contenga el nombre del archivo, o escribir el nombre del archivo entre comillas. En ambos casos, sin la extensión ".csv". Obviamente, primero hay que cargar la tabla en la familia. Lo más seguro es copiar el nombre desde el Explorador de Windows y pegarlo en el parámetro o en la fórmula.

Si referencias un parámetro que no existe (por ejemplo, por un error de tipeo), obtienes el error "Parámetro no válido", porque la familia no tiene ese parámetro:

Error de parámetro no válido

Si el parámetro existe pero no es de texto, aparece un error de análisis. Es un error inesperado, porque ni Revit espera algo así de un usuario:

Error de análisis inesperado

Si el parámetro es de texto pero su valor no es el nombre de una tabla, obtienes "Entrada no válida". Revit lee el valor del parámetro, busca en la familia una tabla con ese nombre y no la encuentra, porque simplemente no existe:

Error de entrada no válida

Si escribes bien el nombre del parámetro, o el nombre de la tabla entre comillas, Revit acepta la fórmula sin avisar y escribe el valor en el parámetro. Las comillas le dicen a Revit que ese es el nombre de una tabla y no algún parámetro:

Fórmula correcta con un parámetro

Fórmula correcta con el nombre de la tabla entre comillas

Si te equivocas al escribir el nombre de la tabla dentro de la fórmula, vuelves a recibir "Entrada no válida":

Error de tipeo en el nombre de la tabla

Conclusión: no te equivoques con la referencia a la tabla.

Nombre del parámetro en la tabla (la columna)

El nombre de una columna en una tabla de búsqueda tiene tres partes: el encabezado de la columna, el tipo de datos y las unidades. El separador son dos signos de almohadilla ##. En una columna solo puede haber datos de un tipo: solo longitud, solo texto, y así.

Estructura del nombre de una columna en una tabla de búsqueda

En la fórmula siempre escribes solo el encabezado de la columna, sin el tipo de datos ni las unidades. Revit toma el tipo de datos del parámetro de la familia donde escribes la fórmula, y las unidades se convierten solas. Por ejemplo, puedes guardar la potencia en kilovatios en la tabla y mostrarla en vatios en la familia. Revit hace la conversión.

El error más común aquí: la gente escribe el nombre del parámetro de Revit, cuando debería escribir el encabezado de la columna de la tabla.

Se olvida que la fórmula ya se está escribiendo dentro de un parámetro. No tiene sentido nombrar ese mismo parámetro en la fórmula, Revit ya sabe con cuál estamos trabajando. Lo que necesita es el encabezado de la columna, para saber en qué columna buscar el valor.

Además, el encabezado de la tabla y el nombre del parámetro en la familia pueden ser distintos. No tienen por qué coincidir. En la imagen del autor el encabezado es T1H, y en la familia el parámetro se llama "Suministro_Desplazamiento desde la parte superior del equipo". Funciona sin problema.

El encabezado se puede indicar directamente entre comillas o con una referencia a otro parámetro. Ese parámetro debe ser de texto, claro.

Ejemplos de encabezados de columna entre comillas

En la imagen de arriba hay varios parámetros donde el encabezado se toma directo de la tabla y se escribe entre comillas. Con eso le decimos a Revit: "para este parámetro de la familia, busca el valor en esta columna de la tabla de búsqueda".

Más abajo, en la fórmula de la potencia del convector, el autor no usa un encabezado de la tabla. Usa el nombre de un parámetro de la familia que guarda el encabezado. Lo necesita para tomar la potencia de distintas columnas según la velocidad del ventilador que elija el usuario. Así se ve en la tabla si la abres en Excel:

Tabla de búsqueda en Excel con columnas para distintas velocidades del ventilador

Es más simple hacer tres columnas que agregar un parámetro de control más para la velocidad y triplicar el largo de la tabla.

Y nada impide meter toda la condición que genera el encabezado directamente dentro de size_lookup(). Adelante, nadie va a venir a revisarlo.

El resto de los errores son de tipeo o de un encabezado mal indicado. Si el encabezado no existe, obtienes "Entrada no válida":

Error de entrada no válida por un encabezado incorrecto

Si referencias el encabezado directamente y olvidas las comillas, obtienes "Parámetro no válido":

Error de parámetro no válido por faltar comillas

Si la columna tiene un tipo de datos distinto al del parámetro donde escribes size_lookup(), aparece "Unidades incompatibles":

Error de unidades incompatibles

Una cosa más: en una tabla puede haber más de una columna con el mismo encabezado. Eso no se debe hacer. Revit tomará el valor solo de la columna que esté más a la izquierda con ese encabezado e ignorará las demás.

Conclusión: no te equivoques con el encabezado de la columna.

Valor en caso de error

El tercer elemento de la fórmula es el valor que Revit pondrá en el parámetro si no encuentra nada en la tabla. Por ejemplo, buscas el nombre de una llave de paso, pero ese diámetro no existe en la tabla. Revit no encuentra el valor, pero algo tiene que escribir en el parámetro, porque un parámetro no puede quedar vacío. Y escribirá el valor que tú indicaste en la fórmula.

El error más frecuente: usar un tipo de datos incorrecto para este valor.

Por ejemplo, escribes la fórmula en un parámetro de longitud y como valor de error pones un texto entre comillas, como "Sin datos". Esto está mal. El valor de error se escribe en un parámetro con un tipo de datos concreto, aquí longitud, así que el valor de error también debe ser una longitud y no un texto. Si pones texto, aparece "Unidades incompatibles":

Error de unidades incompatibles por usar texto como valor de error

Si escribes un guion, Revit no entiende qué pasa. Muestra "Coma inesperada", porque para Revit el guion es un signo aritmético, así que espera una fórmula y no un operador suelto:

Error de coma inesperada por usar un guion

Entonces el valor de error debe corresponder al tipo de datos. Para longitud, masa, ángulo y similares, números. Para texto, texto. Revit no puede mostrar texto en un parámetro numérico. Para darte cuenta de que la fórmula devolvió un error, usa algún valor que claramente no pueda venir de la tabla.

También recomiendo no usar ceros ni valores negativos en los parámetros que controlan la geometría de la familia. Intenta elegir valores que no rompan la geometría, porque si no la familia se romperá dentro del proyecto, y eso no es nada cómodo.

La geometría no puede tener longitud cero, así que no pongas ceros en el valor de error. El autor normalmente usa los mismos valores que tendría el tipo más pequeño de la familia. Así se nota visualmente que algo anda mal, y la geometría igual se construye.

Puedes referenciar otro parámetro que contenga el valor de error, pero de nuevo, cuida los tipos de datos. También puedes escribir fórmulas para generar los valores, y el principio es el mismo: cuida los tipos de datos.

Conclusión: no te equivoques con el valor en caso de error.

Parámetros de control

Así llama el autor a todos los parámetros que van después del valor de error. Revit los usa para encontrar la fila exacta.

Hay dos errores principales:

  • La gente escribe encabezados de columnas de la tabla, cuando debe escribir nombres de parámetros de la familia.
  • La gente mezcla el orden de los parámetros en la fórmula. Aquí a muchos se les cruzan los cables. Piensan: "los valores están en la tabla, entonces tengo que referenciar los encabezados de la tabla". Pero no es así. Los valores sí están en la tabla, pero ¿cómo sabría Revit con qué parámetros de la familia compararlos?

Por eso hay que indicar los nombres de los parámetros de la familia que contienen los valores necesarios.

Por ejemplo, tenemos una te con tres diámetros, uno en cada extremo. La familia tiene tres parámetros: DN1, DN2, DN3. La tabla también tiene tres columnas, digamos con los encabezados d1, d2, d3, y una columna con el nombre. En la fórmula escribimos los nombres de los parámetros de la familia. Revit toma los valores de esos parámetros y los busca en la tabla, en las columnas d1, d2, d3. Cuando los encuentra, devuelve al parámetro el nombre que está en la tabla.

Si en la fórmula pones los encabezados de la tabla, ¿con qué los compararía Revit? ¿Con qué parámetros de la familia? No lo sabe, porque nunca se lo dijimos. Por eso se indican los parámetros de la familia y no los encabezados.

En las fórmulas de abajo, los parámetros de control son el ancho y el alto del convector. Son parámetros de la familia. Revit toma sus valores y los busca en la tabla. Cuando los encuentra, mira los valores en las columnas T1L, T2L y así sucesivamente, y los escribe en los parámetros de la familia.

Fórmulas con el ancho y el alto del convector como parámetros de control

Si pones encabezados de la tabla y la familia no tiene parámetros con esos nombres, obtienes "Parámetro no válido":

Error de parámetro no válido: encabezados de la tabla usados como parámetros de control

Si pones los encabezados entre comillas, obtienes "Unidades incompatibles", porque Revit espera parámetros de longitud y no texto:

Error de unidades incompatibles: encabezados entre comillas

También se pueden escribir valores concretos. La fórmula funcionará, pero solo para esos valores, por supuesto:

Fórmula con valores fijos

El siguiente error tiene que ver con el orden de los parámetros. Hablaré más de eso en la parte sobre cómo armar la tabla. En resumen: los parámetros de la familia en la fórmula deben ir en el mismo orden que las columnas de la tabla, y en la tabla siempre empiezan desde la segunda columna. El ejemplo de la te en la siguiente parte muestra por qué esto importa.

Conclusión: no te equivoques con los parámetros de control.

Errores al armar la tabla

Aquí van los errores que parecen ser los más frecuentes.

Orden de columnas incorrecto

Una tabla de búsqueda tiene una división estricta de columnas. Sin ella, Revit no podría leer la tabla.

La primera columna no tiene encabezado, pero en ella se puede guardar texto. Antes de Revit 2018 o 2019 era la única columna donde se podían guardar datos de texto.

Desde la segunda columna en adelante van los parámetros de control. Son las columnas con los datos que usamos para precisar qué estamos buscando. Para una te con tres diámetros, hay que hacer tres columnas, una por cada diámetro. Así Revit puede identificar exactamente qué te buscamos.

Por ejemplo, tienes tes de 15x15x15, 20x20x20, 20x15x20 y 20x15x15. Si hay solo dos parámetros de control, Revit no puede distinguir la te 20x15x20 de la 20x15x15. Devolverá el valor de la primera te con lados 20x15 que encuentre, que es la que esté más arriba en la lista. Por eso se necesitan tres parámetros de control, es decir, tres columnas.

Si la te además tiene un ángulo de derivación, hay más variantes, así que se agrega una cuarta columna con el ángulo. Y solo después de esos parámetros de control pueden ir todas las demás columnas: códigos, masas, nombres, datos de geometría, etc.

Estas otras columnas pueden ir en cualquier orden, porque de ellas solo leemos datos indicando un encabezado concreto. El orden no importa.

Conclusión: una tabla de búsqueda empieza con una columna de texto sin encabezado, luego van los parámetros de control y después todo lo demás de donde sacamos información. No te equivoques con esta estructura.

Tipos de datos incorrectos

En Autodesk trabaja mucha gente, y a veces se nota que no todos hablan entre sí, porque dos herramientas parecidas, las tablas de búsqueda y los catálogos de tipos, funcionan de forma distinta.

El tropiezo más común es el tipo de datos para números enteros y decimales. En los catálogos de tipos es simplemente ##OTHER##, sin unidades, lo que tiene sentido. Pero en las tablas de búsqueda hay un tipo de datos especial para números: ##number##general.

Por eso, si exportaste los tipos de una familia y obtuviste todos los parámetros con sus tipos de datos, todavía no terminaste. Para los números hay que cambiarlos por los correctos.

Además, en los catálogos de tipos se pueden usar, con limitaciones, parámetros de tipo "Tipo de familia" y "Material", pero en las tablas de búsqueda no se puede de ninguna forma. Lo mismo vale para otros tipos de datos menos populares.

En las tablas de búsqueda no existe el tipo "Sí/No", pero se resuelve fácil con números. Haces una columna con 1 en lugar de "Sí" y 0 en lugar de "No", y escribes la fórmula así: size_lookup(Tabla, Encabezado, 0, parámetros de control) = 1.

Cuando la tabla devuelve 1, la igualdad es verdadera y la casilla se activa. Cuando en la tabla no hay valor o es 0, la igualdad no se cumple y la casilla se desactiva. Un buen truco.

Cambios en los tipos de datos

Esta es otra de las cosas que más molestan. Desde Revit 2021 cambiaron algunos tipos de datos sin una razón clara, por ejemplo los de ángulos. Y esto también afecta a los catálogos de tipos. Por eso, al cargar familias hechas para Revit 2019, aparece un error y los valores no se cargan.

Las tablas de búsqueda se comportan algo mejor en este aspecto. Todo funciona bien hasta que empiezas a exportar y editar algo.

Puedes ver cómo es ahora y cómo era antes en la tabla de Pokhomov y Kovylin. No es la tabla original, sino una copia del autor. Para ver los tipos de datos antiguos, pasa el mouse sobre la esquina negra de una celda o simplemente selecciona la celda.

Tabla con tipos de datos antiguos y nuevos

Exportar una tabla y cambiar los separadores

Al exportar una tabla de búsqueda, Revit no guarda en el disco el archivo original, sino que rearma la tabla desde cero. Siempre usa la coma como separador y no pone el texto entre comillas. Y antes de la versión 2021.1, además, borra por completo todos los caracteres cirílicos.

Esto es lo que pasa después. Un principiante exporta la tabla, la abre en Excel, copia una fila, la edita un poco, la carga en la familia y recibe un error si la tabla tenía texto con comas:

Error de importación: la cantidad de campos no coincide con los encabezados

Todo se debe a que Revit pone la coma como separador al exportar y no encierra el texto entre comillas. Antes la tabla tenía punto y coma o | como separadores, y ahora tiene comas. El texto era "Ventilador de ducto, potencia 100 W", y ahora no hay comillas, así que Revit interpreta "Ventilador de ducto" y "potencia 100 W" como dos columnas distintas.

Pero los encabezados no aumentaron, y de ahí el error de que la cantidad de encabezados y de campos (columnas) no coincide.

Esta es la tabla que se cargó en la familia. El separador es |, por eso no puse comillas en el nombre:

Tabla original con el separador |

Y así quedó después de exportarla desde Revit. Los números se ven horribles, hay comas por todos lados, y el nombre no tiene comillas aunque lleva una coma adentro, que es justo lo que confunde a Revit:

Tabla después de exportar desde Revit

Por eso, normalmente después de exportar hay que ordenar la tabla.

Las comillas y cómo afectan a la tabla

Incluso si usas ; o | como separadores, las comillas pueden aparecer igual en el texto, por ejemplo para indicar pulgadas. En cualquier tabla, una comilla puede tener dos roles: delimitar un texto o ser simplemente un carácter.

Por eso, si en alguna parte usas la comilla como símbolo de pulgadas, hay que escaparla. Eso significa convertir la comilla delimitadora en un carácter normal. Se hace poniendo otra comilla delante.

Por ejemplo, este nombre: Monitor panorámico 27"

Si lo escribes así en la tabla, al cargarla puede que no aparezca ningún error, pero el valor del parámetro no se formará bien. La comilla del final no se interpreta como símbolo de pulgadas sino como el inicio de un texto. Y todo lo que sigue en la tabla se considerará un único texto enorme de varias líneas.

Por eso estas comillas hay que escaparlas, o sea, escribir el texto así: Monitor panorámico 27""

Separadores permitidos

En las tablas de búsqueda solo se pueden usar ciertos signos como separadores. Con ellos Revit entiende cómo dividir los datos en filas y columnas. El autor recomienda usar siempre la barra vertical |, porque casi nunca aparece en nombres y códigos. Además se lee bien y no se pierde en el texto como el punto y coma.

Si usas signos incorrectos, al cargar la tabla obtienes este error:

Error: el separador en el encabezado no está permitido

También puede aparecer si olvidas que la primera columna de la tabla siempre va sin encabezado. Gracias a eso, el primer carácter de la tabla es justamente el separador, Revit lo lee y entiende cómo dividir los datos en columnas y filas. Si la primera columna tiene encabezado, sale este error, porque Revit tomará como separador el primer carácter de la tabla, y solo puede ser una coma, un punto y coma, dos puntos o una barra vertical.

Codificación de la tabla y símbolos raros

Esto aplica a las versiones de Revit anteriores a 2021. En ellas se usaba la codificación ANSI, y solo con ella el cirílico se mostraba bien. Si guardas la tabla en UTF-8, que es lo que Windows suele intentar cuando guardas texto cirílico en el Bloc de notas, aparecen jeroglíficos. Además, ANSI no admite el signo de diámetro ni otros símbolos.

Desde Revit 2021 mejoró, porque ahora se admite UTF-16 LE. Con ella el cirílico se guarda bien, y también el signo de diámetro. En cambio, UTF-8 sigue sin ser recomendable, porque rompe el cirílico.

Por otro lado, en las versiones base de Revit 2021 y 2022 hay problemas con el cirílico en general, así que instala los hotfixes justo después de instalar Revit.

Otra vez, para que quede claro: antes de Revit 2021 usa ANSI, después usa UTF-16 LE.

Eso es todo lo que el autor pudo recopilar sobre errores en las tablas de búsqueda. Ojalá este artículo te sea útil en tu trabajo.


Este artículo es una traducción de la publicación original de Vadim Muratov. Publicado con permiso del autor. Lee el original (en ruso): Revit: ошибки в работе с таблицами выбора

Puede que le guste esto

El Riesgo Oculto de los Elementos Espejados en Proyectos de Revit
Revit

El Riesgo Oculto de los Elementos Espejados en Proyectos de Revit

26 Feb, 2026
479
¿Cómo Escribir Operaciones Asíncronas en Revit API?
Revit

¿Cómo Escribir Operaciones Asíncronas en Revit API?

30 Aug, 2024
366
La epidemia del Copy-Paste: los detalles antiguos que sabotean en silencio tus proyectos nuevos
Gestión

La epidemia del Copy-Paste: los detalles antiguos que sabotean en silencio tus proyectos nuevos

27 Jul, 2026
29