🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Función CELDA (CELL) de Excel — Obtén la dirección, el formato, el tipo y el nombre de archivo de una celda

|

Función CELDA (CELL) de Excel — Obtén la dirección, el formato, el tipo y el nombre de archivo de una celda

ResumenCELDA(tipo_info; [referencia]) devuelve metadatos sobre una celda — su dirección, código de formato, tipo de contenido, ancho de columna o la ruta completa del libro y el nombre de la hoja — en lugar del valor que contiene. Eliges qué preguntar con una cadena de palabra clave ("dirección", "nombrearchivo", "formato", "tipo", "columna", …). En el Excel moderno la mayoría de sus tareas tienen reemplazos más limpios — pero CELDA("nombrearchivo"; A1) sigue siendo la única forma nativa, sin VBA, de obtener la ruta del archivo actual y el nombre de la hoja.

=CELDA("dirección"; C5)     ' -> $C$5   (dirección absoluta como texto)
=CELDA("nombrearchivo"; A1) ' -> C:\Reports\[Sales.xlsx]January   (ruta + hoja)
=CELDA("tipo"; A1)          ' -> "b" en blanco, "l" rótulo/texto o "v" valor
=CELDA("columna"; C5)       ' -> 3      (número de columna)

Donde la mayoría de las funciones se meten dentro de una celda a por su valor, CELDA rodea la celda e informa de su entorno — dónde vive, cómo tiene el formato, qué tipo de cosa contiene y en qué archivo está. Es una sonda de metadatos, y conocer su único uso duradero (y su única trampa fea) es casi todo lo que necesitas.

Nota: en la interfaz de Excel en español esta función se llama CELDA, el separador de argumentos es el punto y coma (;) y el error #VALUE! aparece como #¡VALOR!. A diferencia de la mayoría de funciones, las palabras clave de tipo_info también están traducidas en el Excel en español: se escriben "dirección", "nombrearchivo", "formato", "tipo", "columna", "fila", "ancho", "contenido" — no en inglés. Si escribes =CELDA("nombrearchivo";A1) en un Excel en español obtendrás #¡VALOR!. Funciones relacionadas: DIRECCION (ADDRESS), FILA (ROW), COLUMNA (COLUMN), EXTRAE (MID), ENCONTRAR (FIND), ESNUMERO (ISNUMBER). Los códigos que la función devuelve (b/l/v, "C2"/"P0") no se traducen.

Lo que aprenderás

  • El modelo mental: CELDA es una sonda de metadatos, no un lector de valores
  • Por qué tipo_info es una cadena de palabra clave — y qué pasa cuando la escribes mal
  • El trabajo que CELDA aún conserva: extraer el nombre de archivo, la ruta y el nombre de la hoja
  • Por qué "formato" devuelve un código críptico y por qué queda obsoleto
  • La trampa de recálculo que hace que CELDA «devuelva lo que no es»

El modelo mental: una sonda de metadatos

Cualquier otra función que hayas conocido devuelve lo que hay dentro de una celda — su número, su texto, el resultado de su fórmula. CELDA es la excepción: devuelve hechos sobre la celda. Le dices qué hecho quieres con el primer argumento, tipo_info, y apunta a una celda con el segundo:

=CELDA("fila"; C5)    ' -> 5    ¿en qué fila está esta celda?
=CELDA("ancho"; C5)   ' -> 8    ¿cómo de ancha es su columna?

Ese primer argumento lo es todo. "dirección" te da la dirección absoluta como texto; "fila" y "columna" dan las coordenadas como números; "contenido" da el valor; "tipo" clasifica lo que hay dentro; "formato" informa del formato de número; "nombrearchivo" devuelve la ruta del libro y la hoja; "ancho" mide la columna. Es la misma idea de familia que el criterio de CONTAR.SI siendo una cadena — el comportamiento lo dirige un poco de texto que le entregas, así que una errata no da error como lo daría un número equivocado; =CELDA("direcion"; C5) (mal escrito) devuelve #¡VALOR!.

El trabajo que CELDA aún conserva: nombre de archivo, ruta y nombre de la hoja

Esta es la razón por la que CELDA sobrevive en los libros modernos. CELDA("nombrearchivo"; …) es la única forma integrada, salvo VBA, de leer la propia ruta del libro y el nombre de la hoja actual:

=CELDA("nombrearchivo"; A1)
' -> C:\Reports\[Sales.xlsx]January

Rara vez quieres la cadena entera — quieres un trozo de ella, así que lo recortas con funciones de texto. El nombre de la hoja (todo lo que va tras el ]) es lo que más se pide:

=EXTRAE(CELDA("nombrearchivo";A1); ENCONTRAR("]";CELDA("nombrearchivo";A1))+1; 255)
' -> January   (solo el nombre de la hoja)

En esa sola fórmula viven dos trampas, y ambas son fáciles de pasar por alto:

  • Pasa la referencia. CELDA("nombrearchivo") sin segundo argumento técnicamente funciona, pero informa sobre la última celda que cambió en cualquier parte, que va cambiando a medida que editas. Fíjala siempre: CELDA("nombrearchivo"; A1).
  • Guarda el archivo primero. En un libro que nunca se ha guardado no hay ruta todavía, así que CELDA("nombrearchivo";A1) devuelve una cadena vacía — no un error, solo un blanco. Los analistas que persiguen el «¿por qué está vacía mi fórmula del nombre de la hoja?» casi siempre han topado con un archivo sin guardar.

Por qué «formato» devuelve un código críptico (y queda obsoleto)

CELDA("formato"; …) suena útil — «dime cómo tiene el formato esta celda» — pero es el tipo_info que más decepciona. Devuelve un código corto, no la cadena de formato que ves en el cuadro de diálogo: "C2" para moneda con dos decimales, "P0" para un porcentaje sin ninguno, "D1" para uno de los estilos de fecha, "G" para General.

De ahí siguen dos problemas. Primero, los códigos son una correspondencia críptica y con pérdida — muchos formatos personalizados se colapsan en el mismo código, y la búsqueda depende de la región, así que ramificar tu lógica según CELDA("formato";…) es frágil. Segundo, y peor: "formato" lee el formato, no el valor, y cambiar el formato de una celda no dispara un recálculo. Así que después de reformatear una celda, el resultado de CELDA sigue mostrando el código antiguo hasta que algo fuerza un recálculo (F9). Esa confusión de «me muestra el formato equivocado» casi siempre es un problema de cálculo obsoleto, no un fallo — y por eso usar "formato" para alimentar fórmulas es una trampa que conviene evitar.

La trampa del recálculo y la volatilidad

Merece la pena enunciar esa obsolescencia como regla propia, porque quema a la gente más allá de "formato". CELDA es una función volátil — se recalcula con cada cambio de la hoja, lo que ralentiza en silencio los libros grandes si la esparces por todos lados. Y sin embargo, paradójicamente, los hechos concretos que informa (sobre todo el formato y el color) se actualizan solo en un recálculo, y un cambio de formato por sí solo no lo es. El modelo mental que conviene guardar: CELDA te dice la verdad a fecha del último recálculo, no la de este instante. Ante la duda, pulsa F9 antes de fiarte de una lectura de "formato" o "color".

El criterio

CELDA es una navaja suiza donde la mayoría de las hojas se han sustituido por herramientas de un solo uso mejores. ¿Necesitas la dirección? DIRECCION, o simplemente FILA/COLUMNA, son más claras. ¿Necesitas saber el tipo? Las funciones IS (ESNUMERO, ESTEXTO, ESBLANCO) dicen lo que quieres decir — y ten en cuenta que el "tipo" de CELDA es tosco: solo distingue en blanco (b), rótulo/texto (l) y valor (v), y una fórmula que devuelve "" cuenta como rótulo, no como blanco. ¿Necesitas el valor? Simplemente referencia la celda. Lo que queda, y lo que mantiene a CELDA en la caja de herramientas, es "nombrearchivo" — la ruta y el nombre de la hoja no tienen una fuente nativa más limpia. Su declive constante en el uso no es un misterio; es el sonido de cada una de las demás hojas siendo jubilada mientras la única buena se mantiene afilada.

Cómo ayuda ExcelMaster

La combinación CELDA("nombrearchivo";…) + EXTRAE + ENCONTRAR para extraer el nombre de una hoja es de esas cosas que buscas cada vez. Dile a ExcelMaster «pon el nombre de la hoja actual en A1» o «muestra la ruta de la carpeta del libro en el encabezado», y escribe la fórmula anidada correctamente — referencia fijada, estado de guardado resuelto, el trozo correcto de la ruta — para que no la reconstruyas de memoria. Pídele el formato o el tipo de una celda y te dirigirá hacia la herramienta más afilada (funciones IS, DIRECCION) cuando CELDA solo te daría un código críptico.

Preguntas frecuentes

¿Qué hace la función CELDA en Excel?

=CELDA(tipo_info; [referencia]) devuelve información sobre una celda en lugar de su valor — como su dirección, fila, columna, código de formato de número, tipo de contenido, ancho de columna o el nombre de archivo del libro. Eliges qué devolver con la palabra clave tipo_info, por ejemplo =CELDA("dirección"; C5) para obtener $C$5.

¿Cómo obtengo el nombre de la hoja o la ruta del archivo en Excel?

Usa =CELDA("nombrearchivo"; A1), que devuelve la ruta completa más el nombre de la hoja, como C:\Reports\[Sales.xlsx]January. Para aislar solo el nombre de la hoja, envuélvela: =EXTRAE(CELDA("nombrearchivo";A1); ENCONTRAR("]";CELDA("nombrearchivo";A1))+1; 255). El libro debe estar guardado primero, o el resultado es una cadena vacía.

¿Por qué CELDA("formato") muestra el formato equivocado?

Cambiar el formato de una celda no dispara un recálculo, así que CELDA("formato";…) sigue mostrando el código de formato anterior hasta que Excel recalcula. Pulsa F9 para forzarlo. El resultado también es un código corto ("C2", "P0", "G"), no la cadena de formato completa — y por eso ramificar la lógica según él es frágil.

¿Qué significan los resultados b, l y v del "tipo" de CELDA?

"b" significa que la celda está en blanco, "l" que contiene un rótulo (texto) y "v" que contiene un valor (un número u otro no-texto). Es una comprobación tosca — una fórmula que devuelve "" se lee como l. Para pruebas de tipo precisas usa las funciones IS como ESNUMERO y ESBLANCO.

¿Es volátil la función CELDA?

Sí. CELDA se recalcula con cada cambio de la hoja, así que usarla mucho puede ralentizar un libro grande. Prefiere alternativas no volátiles — DIRECCION, FILA, COLUMNA o las funciones IS — para todo salvo el uso de nombre de archivo/ruta que CELDA maneja de forma única.

Probado en

Probado en: Excel 365 (Windows 11) — última verificación: 09/07/2026.

Guías relacionadas: Excel DIRECCION · Excel Funciones IS · Excel FORMULATEXTO y ESFORMULA · Excel TIPO y N