La solution est assez simple quand on sait que le saut de ligne est le caractère de code 10...
Voici la formule de B1 : =gauche(A1;cherche(car(10);A1)-1)
Le nombre de caractères à récupérer est tout simplement la position du premier saut de ligne, moins un caractère.

Si l’on veut récupérer précisément les deux premières lignes, la formule devient nettement plus complexe :
=gauche(A5;cherche(car(10);A5)+cherche (car(10);droite(A5;nbcar(A5)-cherche (car((10);A5)))-1)
Et un problème apparaît : le saut de ligne apparaît sous la forme d’un rectangle (cf. B5:B6).
Si l’on copie les cellules de la colonne B et que l’on y colle les valeurs, le problème demeure sauf si, une à une, on active l’édition de la cellule pour valider immédiatement avec [Entrée].
Quelqu’un aurait-il la solution pour obtenir de vrais sauts de ligne directement avec une formule, sans passer par une macro ?
Bonjour,
RépondreSupprimerUne solution parmi d'autre :
=CONCATENER(GAUCHE(A1;CHERCHE(CAR(10);A1)-1);GAUCHE(DROITE(A1;NBCAR(A1)-CHERCHE(CAR(10);A1));CHERCHE(CAR(10);A1)-1))
Cordialement
Marche si dans le format de cellule on active le renvoi à la ligne automatique.
RépondreSupprimerBonsoir,
RépondreSupprimerUn peu plus simple comme formule :
=GAUCHE(A5;CHERCHE(CAR(10);A5;CHERCHE(CAR(10);A5)+1)-1)
Pour la présentation, c'est en effet une question de format, donc, dans le cas présent, sans doute impossible à gérer par formule.
Pour le format, c'est vrai !
RépondreSupprimerJe n'y avais pas pensé au départ car, dans la colonne A, je n'avais pas créé ce format, mais en fait il était venu tout seul quand j'avais utilisé [Alt]-[Entrée] pour créer les sauts de ligne...
Quant à la formule de cduigou, c'est parfait ; je me demande comment je n'y ai pas pensé :)