Función ADDRESS de Excel para obtener la dirección de la celda y más

  • Compartir Este
Michael Brown

El tutorial ofrece una breve introducción a la sintaxis de la función DIRECCIÓN y muestra cómo utilizarla para devolver la dirección de una celda de Excel y mucho más.

Para crear una referencia de celda en Excel, puede escribir manualmente las coordenadas de la columna y la fila. Como alternativa, puede obtener una dirección de celda de Excel a partir de los números de fila y columna suministrados a la función DIRECCIÓN. Casi inútil por sí sola, en combinación con otras funciones esta técnica puede ser la única solución en situaciones en las que no es posible hacer referencia a una celda directamente.

    Función ADDRESS de Excel - sintaxis y usos básicos

    La función DIRECCIÓN está diseñada para obtener una dirección de celda en Excel basada en los números de fila y columna especificados. La dirección de celda se devuelve como una cadena de texto, no como una referencia real.

    La función está disponible en todas las versiones de Excel para Microsoft 365 - Excel 2007.

    La sintaxis de la función DIRECCIÓN es la siguiente:

    DIRECCIÓN(fila_num, columna_num, [abs_num], [a1], [hoja_texto])

    Los dos primeros argumentos son obligatorios:

    número_de_fila - el número de fila a utilizar en la referencia de la celda.

    columna_num - el número de columna para construir la referencia de la celda.

    Los tres últimos argumentos, que especifican el formato de referencia de la celda, son opcionales:

    abs_num - el tipo de referencia, absoluta o relativa. Puede tomar cualquiera de los números siguientes; por defecto es absoluta.

    • 1 u omitido - referencia de celda absoluta como $A$1
    • 2 - referencia mixta: columna relativa y fila absoluta como A$1
    • 3 - referencia mixta: columna absoluta y fila relativa como $A1
    • 4 - referencia de celda relativa como A1

    a1 - el estilo de referencia, A1 o R1C1. Si se omite, se utiliza el estilo A1 por defecto.

    • 1 o TRUE u omitido - devuelve la dirección de la celda en el estilo de referencia A1 donde las columnas son letras y las filas son números.
    • 0 o FALSE - devuelve la dirección de la celda en el estilo de referencia R1C1 donde las filas y columnas se representan por números.

    texto_hoja - el nombre de la hoja de cálculo que se incluirá en la referencia externa. El nombre de la hoja debe proporcionarse como una cadena de texto y entre comillas, por ejemplo, "Hoja2". Si se omite, no se utiliza ningún nombre de hoja de cálculo y la dirección toma por defecto la hoja actual.

    Por ejemplo:

    =DIRECCIÓN(1,1) - devuelve la dirección de la primera celda (es decir, la celda en la intersección de la primera fila y la primera columna) como una referencia de celda absoluta $A$1.

    =DIRECCIÓN(1,1,4) - devuelve la dirección de la primera celda como referencia relativa de celda A1.

    En la siguiente tabla, encontrará algunos tipos de referencia más que pueden ser devueltos por las fórmulas ADDRESS.

    Fórmula Resultado Descripción
    =DIRECCIÓN(1,2) $B$1 Referencia absoluta de celda
    =DIRECCIÓN(1,2,4) B1 Referencia relativa de la celda
    =DIRECCIÓN(1,2,2) B$1 Columna relativa y fila absoluta
    =DIRECCIÓN(1,2,3) $B1 Columna absoluta y fila relativa
    =DIRECCIÓN(1,2,1,FALSE) R1C2 Referencia absoluta en el estilo R1C1
    =DIRECCIÓN(1,2,4,FALSE) R[1]C[2] Referencia relativa en el estilo R1C1
    =DIRECCIÓN(1,2,1,, "Hoja2") Hoja2! $B$1 Referencia absoluta a otra hoja
    =DIRECCIÓN(1,2,4,, "Hoja2") Hoja2 ¡B1! Referencia relativa a otra hoja

    Cómo utilizar la función DIRECCIÓN en Excel - ejemplos de fórmulas

    Los siguientes ejemplos muestran cómo utilizar la función DIRECCIÓN dentro de fórmulas más grandes para realizar tareas más difíciles.

    Devuelve el valor de una celda en una fila y columna dadas

    Si su objetivo es obtener un valor de una celda específica basándose en sus números de fila y columna, utilice la función DIRECCIÓN junto con INDIRECTO:

    INDIRECT(DIRECCIÓN(fila_num, columna_num))

    La función DIRECCIÓN devuelve la dirección de la celda como texto. La función INDIRECTO convierte ese texto en una referencia normal y devuelve el valor de la celda correspondiente.

    Por ejemplo, para obtener un valor de celda basado en el número de fila en E1 y el número de columna en E2, utilice esta fórmula:

    =INDIRECTA(DIRECCIÓN(E1,E2))

    Obtener la dirección de una celda con el valor más alto o más bajo

    En este ejemplo, primero encontraremos los valores más altos y más bajos en el rango B2:B7 utilizando las funciones MAX y MIN y emitiremos esos valores en celdas especiales:

    Célula E2: =MAX(B2:B7)

    Celda F2: =MIN(B2:B7)

    Y luego, usaremos ADDRESS en combinación con la función MATCH para obtener las direcciones de las celdas.

    Celda con el valor máximo:

    =DIRECCIÓN(MATCH(E2,B:B,0), COLUMNA(B2))

    Celda con el valor mínimo:

    =DIRECCIÓN(MATCH(F2,B:B,0), COLUMNA(B2))

    En caso de que no desee los valores máximo y mínimo en celdas separadas, puede anidar la función MAX/MIN en el primer argumento de MATCH. Por ejemplo:

    Celda con el valor más alto:

    =DIRECCIÓN(MATCH(MAX(B2:B7),B:B,0), COLUMNA(B2))

    Celda con el valor más bajo:

    =DIRECCIÓN(MATCH(MIN(B2:B7),B:B,0), COLUMNA(B2))

    Cómo funcionan estas fórmulas

    Para encontrar el número de fila, se utiliza la función MATCH(valor_de_consulta, matriz_de_consulta, [tipo_de_coincidencia]) que devuelve una posición relativa del valor_de_consulta en la matriz_de_consulta. En nuestra fórmula, el valor de consulta es el número devuelto por la función MAX o MIN, y la matriz de consulta es la columna completa. Por consiguiente, una posición relativa del valor de consulta en la matriz coincide exactamente con el número de fila de la hoja.

    Para encontrar el número de columna, utilice la función COLUMNA. Por supuesto, nada le impide escribir el número directamente en la fórmula, pero COLUMNA ahorra la molestia del recuento manual en caso de que la columna de destino se encuentre en medio de la hoja.

    Obtener una letra de columna a partir de un número de columna

    Para convertir un número cualquiera en una letra de columna, utilice la función DIRECCIÓN dentro de SUSTITUIR:

    SUSTITUTO(DIRECCIÓN(1, número_columna ,4), "1","")

    Por ejemplo, busquemos la letra de la columna correspondiente al número de A2:

    =SUSTITUIR(DIRECCIÓN(1,A2,4), "1","")

    Si observamos los resultados, podemos decir que la primera columna de la hoja es A, lo cual es obvio; la 10ª columna es J, la 50ª columna es AX y la 100ª columna es CV:

    Cómo funciona esta fórmula

    Para empezar, configure la función DIRECCIÓN para que devuelva una referencia relativa a la primera celda de la columna de destino:

    • Para el número de fila, utilice 1.
    • Para el número de columna, proporcione la referencia a la celda que contiene el número, A2 en nuestro ejemplo.
    • Para el argumento abs_num, introduzca 4.

    Como resultado, ADDRESS(1,A2,4) devolvería A1.

    Para deshacerte de la coordenada de fila, envuelve la fórmula anterior en la función SUBSTITUTE y sustituye "1" por una cadena vacía ("") ¡Listo!

    Obtener la dirección de un rango nombrado

    Para encontrar la dirección de un rango con nombre en Excel, primero tendrá que obtener las referencias de la primera y la última celda, y luego unirlas. Esto funciona de manera un poco diferente en Excel predinámico (2019 y versiones anteriores) y Excel de matriz dinámica (Office 365 y Excel 2021). Los ejemplos a continuación son para Excel 2019 - Excel 2007. Las instrucciones para Excel 365 y Excel 2021 están aquí.

    Cómo obtener la dirección de la primera celda de un rango

    Para devolver una referencia a la primera celda de un rango con nombre, utilice esta fórmula genérica:

    DIRECCIÓN(FILA( gama ),COLUMNA( gama ))

    Suponiendo que el rango se llama "Ventas", la fórmula real es la siguiente:

    =DIRECCIÓN(FILA(Ventas), COLUMNA(Ventas))

    Y devuelve la dirección de la celda superior izquierda del rango:

    En esta fórmula, las funciones FILA y COLUMNA devuelven una matriz de todos los números de fila y columna del rango, respectivamente. A partir de esos números, la función DIRECCIÓN construye una matriz de direcciones de celda. Pero como la fórmula se introduce en una sola celda, sólo se muestra el primer elemento de la matriz, que corresponde a la primera celda del rango.

    Cómo obtener la dirección de la última celda de un rango

    Para encontrar la dirección de la última celda de un rango con nombre, utilice esta fórmula genérica:

    DIRECCIÓN(FILA( gama )+ROWS( gama )-1,COLUMNA( gama )+COLUMNAS( gama )-1)

    Aplicada a nuestro rango denominado "Ventas", la fórmula adopta la siguiente forma:

    =ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)

    Y devuelve la referencia a la celda inferior derecha del rango:

    Esta vez, necesitamos cálculos un poco más complejos para calcular el número de fila. Al igual que en el ejemplo anterior, la función ROW nos proporciona una matriz con todos los números de fila del rango, {4;5;6;7} en nuestro caso. Necesitamos "desplazar" estos números por el número total de filas menos 1, de forma que el primer elemento de la matriz se convierta en el último número de fila. Para encontrar el número total de filas, empleamos la función ROWS yrestamos 1 a su resultado: (4-1=3). A continuación, sumamos 3 a cada elemento de la matriz inicial para hacer el desplazamiento requerido: {4;5;6;7} + 3 = {7;8;9;10}.

    El número de columna se calcula de forma similar: {2,3,4}+3-1 = {4,5,6}

    A partir de las matrices anteriores de números de fila y columna, la función DIRECCIÓN ensambla una matriz de direcciones de celda, pero devuelve sólo la primera correspondiente a la última celda del rango.

    También se puede obtener el mismo resultado escogiendo los valores máximos de las matrices de los números de fila y columna. Sin embargo, esto sólo funciona en una fórmula de matriz, que requiere pulsar Ctrl + Mayús + Intro para completarse correctamente:

    =DIRECCIÓN(MAX(FILA(Ventas)), MAX(COLUMNA(Ventas)))

    Cómo obtener la dirección completa de un rango con nombre

    Para devolver la dirección completa de un rango con nombre, basta con concatenar las dos fórmulas de los ejemplos anteriores e insertar el operador de rango (:) entre ellas.

    DIRECCIÓN(FILA( gama ), COLUMNA( gama )) & ":" & DIRECCIÓN(FILA( gama ) + FILAS( gama )-1, COLUMNA( gama ) + COLUMNAS( gama )-1)

    Para que funcione para nuestro conjunto de datos de muestra, sustituimos el "rango" genérico por el nombre de rango real "Ventas":

    =ADDRESS(ROW(Sales), COLUMN(Sales)) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)

    Y obtener la dirección completa del rango como absoluto referencia $B$4:$D$7:

    Para devolver la dirección de rango como relativa (sin el signo $, como B4:D7), establezca el argumento abs_num en ambas funciones ADDRESS en 4:

    =ADDRESS(ROW(Sales), COLUMN(Sales), 4) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1, 4)

    Naturalmente, se pueden hacer los mismos cambios en fórmulas individuales para la primera y la última celda, y el resultado será similar a éste:

    Cómo obtener la dirección de un rango con nombre en Excel 365 y Excel 2021

    A diferencia del comportamiento tradicional de "una fórmula - una celda" en versiones anteriores, en el nuevo Excel, cualquier fórmula que potencialmente pueda devolver múltiples valores, lo hace automáticamente. Dicho comportamiento se denomina spilling.

    Por ejemplo, en lugar de devolver la dirección de la primera celda, la siguiente fórmula devuelve las direcciones de todas y cada una de las celdas de un rango con nombre:

    =DIRECCIÓN(FILA(Ventas), COLUMNA(Ventas))

    Para obtener la dirección del primera celda únicamente, es necesario activar la intersección implícita, que se activa por defecto en Excel 2019 y versiones anteriores. Para ello, coloque el símbolo @ (operador de intersección implícita) antes de los nombres de rango:

    =ADDRESS(@ROW(Ventas), @COLUMN(Ventas))

    De forma similar, puedes arreglar otras fórmulas.

    Para obtener última celda en el rango:

    =ADDRESS(@ROW(Ventas) + ROWS(Ventas)-1, @COLUMN(Ventas) + COLUMNS(Ventas)-1)

    Para obtener el dirección de un ámbito con nombre :

    =ADDRESS(@ROW(Sales), @COLUMN(Sales)) & ":" & ADDRESS(@ROW(Sales) + ROWS(Sales)-1, @COLUMN(Sales) + COLUMNS(Sales)-1)

    La siguiente captura de pantalla muestra los resultados:

    Sugerencia. Al abrir una hoja de cálculo con fórmulas creadas en una versión anterior en Excel de matriz dinámica, Excel inserta automáticamente un operador de intersección implícito.

    Así es como se devuelve una dirección de celda en Excel. Para echar un vistazo más de cerca a todas las fórmulas tratadas en este tutorial, te invitamos a descargar nuestro libro de trabajo de ejemplo a continuación. Te doy las gracias por leer y ¡espero verte en nuestro blog la próxima semana!

    Cuaderno de prácticas para descargar

    Función ADDRESS de Excel - ejemplos de fórmulas (archivo .xlsx)

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.