Separar contenido celda en dos

Buenas,
hace tiempo planteé esta pregunta pero la solución no me convenció del todo ya que había casos en los que la respuesta dada no funcionaba.
Vuelvo a explicarlo de manera sencilla: Se trata de dividir el contenido (texto) de una celda en dos. Se dan las siguientes condiciones.
1. El texto original (celda A1) tiene como máximo 56 caracteres, que han de ser divididos en dos celdas de 28 caracteres como máximo.
2. Si el texto original tiene 28 o menos caracteres todo el texto se guarda en la celda (B1).
3. Si el texto tiene 29 o más caracteres es necesario buscar un espacio en blanco (" ") dentro de los primeros 28 caracteres, estando este espacio en blanco lo más cerca posible del carácter número 28, con el objetivo de no cortar una palabra por la mitad. Una vez encontrado este espacio en blanco la celda B1 contendrá los caracteres 1 a POR (siendo POR donde está el espacio en blanco) y la celda C1 los caracteres del (X+1) hasta el final.
Ejemplo:
A1: El coche de Mercedes es un Citroen. (35 caracteres con el punto incluido)
B1: El coche de Mercedes es un (27 caracteres con el ultimo espacio incluido)
C1: Citroen. (8 caracteres)
Muchas gracias.

1 Respuesta

Respuesta
1
En B1:
=SI(LARGO(A1)<29;A1;IZQUIERDA(A1;COINCIDIR(28;SI(MED(A1;FILA(INDIRECTO("1:"&LARGO(A1)));1)=" ";FILA(INDIRECTO("1:"&LARGO(A1))));1)))
En C1:
=DERECHA(A1;LARGO(A1)-LARGO(B1))
Teniendo en cuenta que:
- La primera fórmula es matricial, por lo que hay que introducirla pulsando mayúsculas control entrada al mismo tiempo.
- Quizás haya que sustituir los puntos y comas por comas, dependerá del separador de listas del equipo.
- Si la versión no es Excel 2010, habrá que sustituir MED por EXTRAE.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas