
Tengo cadenas en Excel como AA
o XA
.
Necesito incrementarlos así:
Porque AA
en la celda A1, estará AB
en la celda B1, AC
en la celda B2 y así sucesivamente.
Porque XA
en la celda A1, estará XB
en la celda B1, XC
en la celda B2 y así sucesivamente.
Probé el código popular =CHAR(CODE(A1)+1)
pero no funciona después de Z.
Cualquier sugerencia es bienvenida.
Respuesta1
Prueba esto: pon "AA" en la celdaA1e ingrese la siguiente fórmula en la celdaB1y arrastrar a través
=IF(RIGHT($A1,1)="Z", CHAR(CODE(LEFT(A1,1))+1),LEFT(A1,1))&CHAR(65+MOD(CODE(RIGHT(A1,1))+1-65,26))
Se incrementará de la siguiente manera: AA, AB, AC,..., AZ, BA, BB, BC.... etc.
Es posible que desee adaptar esta fórmula para adaptarla a su presentación particular. Tenga en cuenta que esto no funcionará después de "ZZ".
Actualización: error solucionado
Respuesta2
Podemos usar la propia hoja de cálculo de Excel para ayudar a incrementar las letras; el incremento funcionará de A
aXFC
Primero cree la referencia de celda: INDIRECT(A1&"1")
luego busque la dirección de la siguiente columna: ADDRESS(1,COLUMN(INDIRECT(A10&"1"))+1)
Luego del $??$1 extraemos las letras: 2 maneras:
Busque el segundo $ y recorte el texto entre ellos.
=MID(ADDRESS(1,COLUMN(INDIRECT(A1&"1"))+1),2,FIND("$",ADDRESS(1,COLUMN(INDIRECT(A1&"1"))+1),2)-2)
Reemplace el 1 y $ con nada en la cadena
=SUBSTITUTE(SUBSTITUTE(ADDRESS(1,COLUMN(INDIRECT(A1&"1"))+1),"$",""),"1","")
Elige cuál funciona mejor para ti
Respuesta3
Otro ejemplo: escriba esto en la celda A1, luego copie la fórmula en cualquiera o en todas las celdas.
=CHAR(MOD(FILA(A1)-1;26)+65)&CHAR(MOD(COLUMNA(A1)-1;26)+65)
Pretende ser un ejemplo de cómo se puede pensar sobre el problema.
Respuesta4
Como otra solución con el uso ADDRESS()
es:
=MID(ADDRESS(1,26+ROW()),2,2)
La fórmula anterior volverá a aparecer AA
en la primera fila, AB
en la segunda fila y así sucesivamente.
También usando matemáticas la fórmula es:
=CONCATENATE(CHAR(INT(ROW()/26)+65),CHAR(MOD(ROW()-1,26)+65))