Excel Encuentra la Última Ocurrencia de un Carácter en una Cadena (6 Métodos)

  • Compartir Este
Hugh West

En este artículo, vamos a encontrar el última aparición de un carácter en un cadena en Excel Nuestro conjunto de datos de muestra tiene tres columnas : Nombre de la empresa , Código del empleado y Última incidencia . Código del empleado contiene el nombre, la edad y el departamento de un empleado.

Por primera 4 encontraremos la posición de la barra inclinada " / "para todos los valores de Código del empleado Después de eso, vamos a emitir cadenas después de la última barra en el último 2 métodos.

Descargar el cuaderno de prácticas

Buscar última ocurrencia de carácter en cadena.xlsm

6 Maneras de Encontrar la Última Ocurrencia de un Carácter en una Cadena en Excel

1. Uso de las funciones FIND & SUBSTITUTE en Excel para encontrar la posición de la última ocurrencia de un carácter en una cadena.

Para el primer método, vamos a utilizar el método ENCONTRAR la función SUSTITUIR la función CHAR y la función LEN para encontrar el último posición de la barra en nuestro cadena .

Pasos:

  • En primer lugar, escriba la siguiente fórmula en celda D5 .
=FIND(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/"))

Desglose de fórmulas

Nuestra función principal es ENCONTRAR Vamos a encontrar el CHAR(134) en nuestra cadena.

  • CHAR(134)
    • Salida: † .
    • Necesitamos establecer un carácter que no está presente en nuestras cadenas. Lo hemos elegido porque es poco común en las cadenas. Si de alguna manera lo tienes en tus cadenas, cámbialo por cualquier cosa que no esté en tus cadenas (por ejemplo " @ ", " ~ "etc.).
  • SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/")) -se convierte,
  • SUBSTITUTE(C5,"/","†",(17-LEN("Mike32Marketing"))/1) -se convierte,
  • SUBSTITUTE("Mike/32/Marketing","/","†",(17-15)/1)
    • Salida: "Mike/32†Marketing" .
  • Ahora nuestra fórmula completa se convierte en,
  • =FIND("†", "Mike/32†Marketing")
    • Salida: 8 .
  • En segundo lugar, pulse INTRODUCE .

Veremos el valor 8 Si contamos manualmente desde el lado izquierdo, obtendremos 8 como posición para el barra en célula C5 .

  • Por último, utilice la función Asa de llenado para copiar la fórmula hacia abajo.

Así, tenemos la posición del última aparición de un carácter en nuestro cadena .

Más información: Función Excel: BUSCAR vs. ENCONTRAR (Análisis comparativo)

2. Aplicación de las Funciones MATCH & SEQUENCE en Excel para Encontrar la Posición de la Última Ocurrencia de un Carácter en una Cadena

Para el segundo método, vamos a utilizar el método MATCH la función SECUENCIA la función MID y la función LEN para encontrar la posición del última aparición de un carácter en el cadena Recuerde SECUENCIA sólo está disponible en Excel 365 o Excel 2021 .

Pasos:

  • En primer lugar, escriba la siguiente fórmula en celda D5 .
=MATCH(2,1/(MID(C5,SEQUENCE(LEN(C5)),1)="/"))

Desglose de fórmulas

  • SECUENCIA(LEN(C5))
    • Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
    • En LEN mide la longitud de célula C5 . SECUENCIA devuelve una lista de números secuencialmente en una matriz.
  • MATCH(2,1/(MID(C5,{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1)=”/”))
    • Salida: 8 .
    • En Partido es encontrar el último 1 en nuestra fórmula. 8.o posición.

  • En segundo lugar, pulse INTRODUCE .

Utilizando la fórmula, hemos encontrado la posición de barra diagonal como 8 en nuestro cadena .

  • Por último, utilice Asa de llenado a Autorrelleno la fórmula.

En conclusión, hemos aplicado otra fórmula para hallar el última posición de un carácter en el cadenas .

Más información: Cómo encontrar caracteres en una cadena de Excel (8 maneras fáciles)

3. Utilizar una Fórmula de Matriz en Excel para Encontrar la Posición de la Última Ocurrencia de un Carácter en una Cadena

Vamos a utilizar el FILA la función ÍNDICE la función MATCH El MID y el LEN funciones para crear una fórmula de matriz para encontrar la posición del última aparición de un carácter en un cadena .

Pasos:

  • En primer lugar, escriba la fórmula siguiente en celda D5 .
=MATCH(2,1/(MID(C5,ROW($C$1:INDEX(C:C,LEN(C5))),1)="/"))

Desglose de fórmulas

La fórmula es similar al método 2 Estamos usando el FILA y el ÍNDICE para replicar la salida como la función SECUENCIA función.

  • ROW($C$1:INDEX(C:C,LEN(C5)))
    • Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
    • Podemos ver que la salida es la misma. El ÍNDICE devuelve el valor de un rango. La función LEN cuenta la longitud de la cadena desde célula C5 Por último, el FILA devuelve la función célula valores de 1 a célula longitud de C5 El resto de la fórmula es igual que el método 2 .

  • En segundo lugar, pulse INTRODUCE .

Tenemos 8 nuestra fórmula funcionó a la perfección.

Nota: Estamos utilizando el Excel 365 Si utiliza una versión anterior, deberá pulsar CTRL + CAMBIO + INTRODUCE .

  • Por último, haga doble clic o arrastre hacia abajo el Asa de llenado .

Este es el aspecto que debe tener el paso final.

Más información: Encontrar la Primera Ocurrencia de un Valor en un Rango en Excel (3 Maneras)

Lecturas similares

  • Cómo encontrar el carácter * no como comodín en Excel (2 métodos)
  • Cómo Usar la Fórmula de Excel para Encontrar el Número de la Última Fila con Datos (2 Maneras)
  • Buscar Último Valor en Columna Mayor que Cero en Excel (2 Fórmulas Fáciles)
  • Cómo encontrar enlaces en Excel
  • Encontrar enlaces externos en Excel (6 métodos rápidos)

4. Función definida por el usuario para encontrar la posición de la última ocurrencia de un carácter en una cadena

En este método, utilizaremos un VBA para encontrar la última posición de un carácter en un cadena Sin más dilación, pasemos a la acción.

Pasos:

  • En primer lugar, pulse ALT + F11 para que aparezca el VBA ventana.

Puede elegir Visual Basic del Desarrollador para hacerlo también.

  • En segundo lugar, de Inserte Seleccionar Módulo .

  • Tercero, copia y pegar el siguiente código.
 Function LOccurence(x1 As String, x2 As String) LOccurence = InStrRev(x1, x2) End Function 

Hemos creado una función personalizada llamada " LOccurencia ". InStrRev es un VBA que devuelve la posición final de un carácter Introduciremos nuestro célula como x1 y el carácter específico (en nuestro caso, es un barra diagonal ) como x2 en esta función personalizada.

  • A continuación, cierre el VBA y vaya a la ventana " Posición VBA " hoja .
  • Escriba la siguiente fórmula en celda D5 .
=LOccurence(C5,"/")

En esta función personalizada, le decimos que busque la posición del icono última aparición de barra diagonal en el cadena de célula C5 .

  • A continuación, pulse INTRODUCE .

Tenemos 8 como se esperaba última vez posición del barra diagonal .

  • Por último, podemos arrastrar la fórmula hacia abajo utilizando el botón Asa de llenado .

Así, hemos aplicado otra fórmula para encontrar la posición del última aparición de un carácter .

Más información: Cómo Encontrar Caracteres en una Cadena desde la Derecha en Excel (4 Métodos Fáciles)

5. Uso de Funciones Combinadas en Excel para Encontrar la Última Ocurrencia de un Carácter en una Cadena

Hasta ahora, hemos visto cómo encontrar la última posición de un carácter. Ahora vamos a utilizar la función BUSCAR la función DERECHA la función SUSTITUIR El LEN El CHAR para mostrar la cadena después de la última aparición de un carácter. En términos más sencillos, mostraremos el departamento de los empleados de la cadena Columna Código de empleado .

Pasos:

  • En primer lugar, escriba la siguiente fórmula en celda D5 .
=RIGHT(C5,LEN(C5)-SEARCH(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))))

Desglose de fórmulas

  • SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/",""))) -se convierte,
  • SUBSTITUTE(C5,"/",CHAR(134),2)
    • Salida: "Mike/32†Marketing" .
    • En SUSTITUIR sustituye un valor por otro. En nuestro caso, está sustituyendo cada barra diagonal con un en la primera porción y con blanco en la última. Entonces el LEN mide su longitud. Así es como hemos obtenido nuestro valor.
  • BUSCAR("†", "Mike/32†Marketing")
    • Salida: 8 .
    • En BUSCAR está encontrando el carácter especial en nuestra salida anterior. En consecuencia, lo encontró en 8a
  • Finalmente, nuestra fórmula se reduce a, DERECHA(C5,9)
    • Salida: "Marketing .
    • En DERECHA devuelve el valor de la celda hasta un cierto número de caracteres del lado derecho. Hemos encontrado la posición del último barra diagonal en 8a La longitud de célula C5 es 17 y 17 - 8 = 9 Por lo tanto, tenemos el 9 caracteres de la derecha como salida.

  • En segundo lugar, pulse INTRODUCE .

Hemos conseguido el cadenas después del último barra diagonal .

  • Por último, utilice la función Asa de llenado a Autorrelleno las fórmulas en célula gama D6:D10 .

Así, hemos extraído el cadenas después del última aparición de un carácter .

Más información: Cómo encontrar si la celda contiene un texto específico en Excel

6. Fórmula VBA Personalizada en Excel para Encontrar la Última Ocurrencia de un Carácter en una Cadena

Para el último método, utilizaremos un método personalizado VBA para extraer el cadena después del barra oblicua .

Pasos:

  • En primer lugar, pulse ALT + F11 para que aparezca el VBA ventana.

Puede elegir Visual Basic del Desarrollador para hacerlo también.

  • En segundo lugar, de Inserte Seleccionar Módulo como hicimos en el método 4 .
  • Tercero, copia y pegar el siguiente código.
 Function LastString(cRange As Range, cString As String) Dim cLength As Integer cLength = Len(cRange) For x = cLength To 1 Step -1 If Mid(cRange, x - 1, 1) = cString Then LastString = x Exit Function End If Next x End Function 

Vamos a crear una función personalizada llamada " LastString ". Esta función devolverá la posición inicial del cadenas después del última aparición de un carácter.

  • A continuación, escriba la fórmula siguiente en celda D5 .
=RIGHT(C5,LEN(C5)-LastString(C5,"/")+1)

Desglose de fórmulas

  • LastString(C5,"/")
    • Salida: 9 .
    • Aquí obtenemos la posición inicial del cadena inmediatamente después del última barra oblicua .
  • LEN(C5)
    • Salida: 17 .
  • LEN(C5)-LastString(C5,"/")+1
    • Salida: 9.
    • Tenemos que añadir 1 de lo contrario obtendremos el valor con el " M ".
  • Nuestra fórmula se reducirá a DERECHA(C5,9)
    • Salida: " Marketing ".

  • Pulse INTRODUCE .

Obtendremos el valor " Marketing ".

  • Por fin, Autorrelleno la fórmula hasta celda C10 .

Hemos logrado nuestro objetivo. La fórmula funciona como estaba previsto.

Más información: Cómo Encontrar la Última Fila con un Valor Específico en Excel (6 Métodos)

Sección práctica

Hemos adjuntado conjuntos de datos de práctica además de cada método en la sección Excel Puedes practicar para mejorar en esta tarea.

Conclusión

Le hemos mostrado 6 métodos en Excel para encontrar el última aparición de un carácter en un cadena Si tienes algún problema al respecto, no dudes en comentarlo a continuación. Gracias por leer y ¡sigue superándote!

Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.