Designación alfabética de columna (Microsoft Excel)
Puede determinar fácilmente la columna numérica de la celda utilizando la función COLUMNA. Todo lo que necesita hacer es poner una fórmula como esta en una celda, y el resultado es un valor donde A = 1, B = 2, etc .:
=COLUMN()
¿Qué sucede si desea un valor alfabético en lugar de un valor numérico? Esto se puede hacer de varias formas diferentes. Por ejemplo, la siguiente fórmula funcionará muy bien para las primeras 26 columnas, de la A a la Z:
=CHAR(COLUMN()+64)
Esto funciona porque las letras de la A a la Z utilizan códigos de caracteres de 65 a 90. Cuando COLUMN devuelve un valor para las columnas de la A a la Z (de 1 a 26), se puede sumar a 64 para obtener las letras de esas columnas, de 65 a 90.
Por supuesto, esta solución no funcionará si desea conocer las designaciones de letras de las columnas más allá de Z. (Excel puede usar columnas hasta IV).
Esta fórmula funcionará para columnas de uno y dos caracteres:
=IF(COLUMN()<27,CHAR(COLUMN()+64),CHAR((COLUMN()/26)+64)& CHAR(MOD(COLUMN(),26)+64))
Como puede ver, cuando ingresa a varios caracteres para una columna, la fórmula se alarga con bastante rapidez. Sin embargo, puede acortar la fórmula utilizando una función que no sea COLUMNA. Considere esta fórmula, que se basa principalmente en la función ADDRESS:
=LEFT(ADDRESS(1,COLUMN(),4),(COLUMN()>26)+1)
La función DIRECCIÓN devuelve la dirección de una celda específica. En este caso, devuelve la dirección de la celda en la primera fila de la columna actual. Por lo tanto, si la fórmula está en la celda BF27, devuelve BF1.
La fórmula usa la función IZQUIERDA para devolver el número correcto de caracteres más a la izquierda en la dirección, menos el número 1 de la fila.
Una versión aún más corta de la fórmula se basa en la función SUSTITUIR en lugar de la función IZQUIERDA:
=SUBSTITUTE(ADDRESS(ROW(),COLUMN(),4),ROW(),"")
Esta versión usa la función FILA para juntar la dirección y luego quita el valor FILA del resultado de la función DIRECCIÓN.
Por supuesto, también puede utilizar una solución basada en macros, si lo desea. La siguiente macro funcionará con cualquier columna de su hoja de trabajo:
Function AlphaCol() As String Dim J As Integer Dim K As Integer Dim iDiv As Integer Dim sTemp As String Application.Volatile J = Selection.Column iDiv = 26 ^ 2 sTemp = "" While J > 0 K = Int(J / iDiv) If K > 0 Then sTemp = sTemp & Chr(K + 64) J = J - (K * iDiv) iDiv = iDiv / 26 Wend AlphaCol = sTemp End Function
La macro es una función definida por el usuario, lo que significa que puede usarla en sus hojas de trabajo simplemente agregando esto a cualquier celda:
=AlphaCol()
Se devuelve una cadena de texto que consta de la designación de la columna.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (3254) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:
link: / excelribbon-Alphabetic_Column_Designation [Designación alfabética de columna]
.