Tengo una hoja de Excel con valores de texto, por ejemplo, en A1: "Este es el texto". Necesito encontrar la posición del último personaje espacial. ¿Existe una fórmula de Excel que me dará el resultado que quiero? He intentado ENCONTRAR y BUSCAR, sin embargo, estos comienzan desde la izquierda, lo que necesito es comenzar desde la derecha.
11
Aquí hay otra forma, cualquier personaje está permitido en A1 (¡incluso muñecos de nieve!)
=LOOKUP(2^15,FIND(" ",A1,ROW(INDIRECT("1:"&LEN(A1)))))
FIND
tiene un tercer argumento que define la posición de inicio de la búsqueda, si aplica una matriz de valores enteros 1 a n (donde n es la longitud de A1) a ese parámetro, obtiene una matriz con el último número como la posición de la búsqueda último espacioLOOKUP
luego extrae ese número buscando un valor mayor que cualquier valor que pueda encontrarse en esa matriz, en cuyo caso se encuentra el último númeroEn
Excel 2010
o después, también puedes usarAGGREGATE
funciones como esta=AGGREGATE(14,6,FIND(" ",A1,ROW(INDIRECT("1:"&LEN(A1)))),1)
FIND
devuelve la misma matriz que antes y al usar 14 como primer argumento deAGGREGATE
y 1 como la última, obtiene el mayor valor en la matriz, mientras ignora los errores [6]fuente
"1:"&LEN(A1)
evalúa como "1:12", que es una cadena que ROW no puede procesar pero INDIRECTO convierte una cadena en una referencia válida que ROW puede manejar, por lo que ROW (1:12) le da {1 ; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12}barry larry houdini
, FIND devolverá esta matriz{6;6;6;6;6;6;12;12;12;12;12;12;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
y LOOKUP y / o AGGREGATE tomarán el último / mayor valor numérico de eso, es decir, 12