Office 2013 - Excel: Eliminar caracter | al final de una cadena

Anónimas
2017-03-30T21:21:49+00:00

Buenas tardes.

Tengo una planilla que tiene el siguiente contenido, cada uno en una celda diferente:

1|N|3.1|Atyro 3.2.21| 0000005049692|00214935520018|2|Av. Luis Alberto de Herrera 3326|24865008|

4|062016|76|1160709546.41||

5|1|DO|10160547|MARTINEZ|PEREZ|MARIA|JOSE|15081947|2|1|

6||1|DO|10160547|1|01102012|1|20|12|9|99|||N|30|0|1||

7||1|DO|10160547|1|1|127741.95|||

Cada uno de los registros tiene al final el caracter | el cual puede aparecer una vez, dos veces o incluso más. Preciso eliminar esos caracteres que están al final de la cadena, independientemente de la cantidad que sean. ¿Hay alguna forma de resolverlo con funciones?

Muchas gracias.

Microsoft 365 y Office | Excel | Para la casa | Windows

Pregunta bloqueada. Esta pregunta se migró desde la Comunidad de Soporte técnico de Microsoft. Puede votar si es útil, pero no puede agregar comentarios o respuestas ni seguir la pregunta.

0 comentarios No hay comentarios
Respuesta aceptada por el autor de la pregunta
Héctor Miguel 71,595 Puntos de reputación
2017-03-31T06:25:37+00:00

suponiendo que tu primer cadena de caracteres está en la celda [B2]...

prueba con la siguiente formula de entrada matricial, se confirma pulsando ctrl+shift+enter

=izquierda(b2,max(fila(indirecto("1:"&largo(b2)))*(extrae(b2,fila(indirecto("1:"&largo(b2))),1)<>"|")))

OJO con el separador de argumentos, mi sistema usa a la coma

saludos,

hector.

¿Le ha resultado útil esta respuesta?

1 persona ha encontrado útil esta respuesta.
0 comentarios No hay comentarios
Respuesta aceptada por el autor de la pregunta
Anónimas
2017-04-03T17:09:21+00:00

En cualquier caso lo que se quiere hacer no es correcto (ni necesario). 

Creo que (por fin) he entendido tu punto de vista.

Si se quieren devolver (nuevamente) esos datos a un rango de celdas separadas, es necesario que se conserven los grupos de separadores tal cual, para que las celdas vacías sigan permaneciendo vacías y cada campo siga apareciendo en su columna correspondiente.

Ahora entiendo tu frase «Sólo quiere borrar los | que están al final.» ![](https://learn-attachment.microsoft.com/api/attachments/c259481c-b63d-4f66-b77f-e41fd753b710?platform=QnA)  (he estado espeso).

¿Le ha resultado útil esta respuesta?

0 comentarios No hay comentarios

38 respuestas adicionales

Ordenar por: Muy útil
  1. Anónimas
    2017-04-01T07:50:08+00:00

    Voy a echar un poco de agua al vino.

    La función indirecto es volátil, esto, unido a que es una fórmula matricial, destroza el rendimiento (si el número de fórmulas es alto).  

    Para saber más: http://www.decisionmodels.com/calcsecretsi.htm

    https://msdn.microsoft.com/en-us/library/office/bb687891.aspx?f=255&MSPPError=-2147217396

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios
  2. Anónimas
    2017-03-31T20:00:26+00:00

    Con funciones integradas ni me atrevo. ¿Te vale con una función definida por el usuario (UDF o FDU)?

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios
  3. Anónimas
    2017-03-31T16:53:54+00:00

    Vuelvo sobre la consulta porque me pasó que en casos como el siguiente:

    6|12016|1|DO|10298788|1|1012008|1|30|12|9|99|||N|30|0|  ||

    al aplicar la fórmula, me deja un |, me devuelve lo siguiente:

    6|12016|1|DO|10298788|1|1012008|1|30|12|9|99|||N|30|0|

    Esto me pasa solamente en estos casos, en los que hay más de un | al final y tienen una separación.

    ¡Gracias de nuevo!

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios