Supprimer un caractère si il se situe à la fin ou au début d'une cellule

Bonjour,

j'aimerai supprimer les ; si ils se situent au début ou à la fin d'une cellule excel. ;)

Bonjour,

=GAUCHE(DROITE(A1;NBCAR(A1)-1);NBCAR(DROITE(A1;NBCAR(A1)-1))-1)
Oups!

Cela supprime les caratères à gauche et à droite mais pas à gauche ou à droite si ";"

Bonjour à tous

Une propossition longue comme un jour sans pain :

=SI(GAUCHE(SI(DROITE(A1;1)=";";GAUCHE(A1;NBCAR(A1)-1);A1);1)=";";DROITE(SI(DROITE(A1;1)=";";GAUCHE(A1;NBCAR(A1)-1);A1);NBCAR(SI(DROITE(A1;1)=";";GAUCHE(A1;NBCAR(A1)-1);A1))-1);SI(DROITE(A1;1)=";";GAUCHE(A1;NBCAR(A1)-1);A1))

En attendant une version plus propre.

Cordialement

bonsoir

une contribution avec le texte en D 11

=STXT(D11;SI(MIN(SI(STXT(D11;LIGNE(1:50);1)=";";LIGNE(1:50);""))>1;1;2);SI(MAX(SI(STXT(D11;LIGNE(1:50);1)=";";LIGNE(1:50);""))+1<NBCAR(D11);NBCAR(D11);(NBCAR(D11)-NB(SI(STXT(D11;LIGNE(1:50);1)=";";LIGNE(1:50);""))+1)))

prevu pour 50 caractères dans la cel

la méthode efgé à fonctionné merci

Bonsoir à tous !

365 pour....un peu de pain ?

=LET(t_;A1;m_;SI(GAUCHE(t_;1)=";";TEXTE.APRES(t_;";";1);t_);SI(DROITE(m_;1)=";";TEXTE.AVANT(m_;";";-1);m_))

Bonsoir à tous ,

Une autre formule :

=SI(NBCAR(A1)<=2;SUBSTITUE(A1;";";"");REPT(GAUCHE(A1);GAUCHE(A1)<>";")&STXT(A1;2;NBCAR(A1)-2)&REPT(DROITE(A1);DROITE(A1)<>";"))

Bonsoir à tous ,

Une autre formule :

=SI(NBCAR(A1)<=2;SUBSTITUE(A1;";";"");REPT(GAUCHE(A1);GAUCHE(A1)<>";")&STXT(A1;2;NBCAR(A1)-2)&REPT(DROITE(A1);DROITE(A1)<>";"))

coucou

a tester avec

;toto;toto;;

cordialement

Bonjour tulipe_4,

La fleur à la fraise a dit :

coucou

a tester avec

;toto;toto;;

cordialement

Chez ma pomme, ça fonctionne ! Ou alors quelque chose m'échappe (ce qui est possible...)

image

re

bah...... il reste un " ; "

Re à tous ,

J'avions considéré qu'il n'y avait qu'un ; au début ou à la fin. Pourquoi? Je n'en sais rien .

Bon alors une autre formule matricielle (à valider par Ctrl+Maj+Entrée) :

=SIERREUR(REMPLACER(GAUCHE(A1;MAX(SI(STXT(A1;LIGNE(INDIRECT("1:" & NBCAR(A1)));1)<>";";LIGNE(INDIRECT("1:" & NBCAR(A1)));"")));1;MIN(SI(STXT(A1;LIGNE(INDIRECT("1:" & NBCAR(A1)));1)<>";";LIGNE(INDIRECT("1:" & NBCAR(A1)));""))-1;"");"")

Dans le fichier joint une comparaison avec différents texte source.

Re à tous ,

J'avions considéré qu'il n'y avait qu'un ; au début ou à la fin. Pourquoi? Je n'en sais rien .

Bon alors une autre formule matricielle (à valider par Ctrl+Maj+Entrée) :

=SIERREUR(REMPLACER(GAUCHE(A1;MAX(SI(STXT(A1;LIGNE(INDIRECT("1:" & NBCAR(A1)));1)<>";";LIGNE(INDIRECT("1:" & NBCAR(A1)));"")));1;MIN(SI(STXT(A1;LIGNE(INDIRECT("1:" & NBCAR(A1)));1)<>";";LIGNE(INDIRECT("1:" & NBCAR(A1)));""))-1;"");"")

par les temps qui courent ,,, on ne nous remerciera jamais assez de construire des usines à gaz

Re,

J'ai testé les autres formules dans mon dernier fichier. J'ai l'impression qu'elles donnent toutes des résultats un peu différents…

D'un point de vue esthétique, il y a de très belles architectures d'usine. D'ailleurs de plus en plus d'anciennes usines ou industries sont maintenant inscrits au patrimoine de France. A ma connaissance, l'O.N.U n'a pas encore inscrit de formules Excel à notre patrimoine mondial (de source sûre, il y aurait quelques formules de Excel-pratique qui seraient candidates )

Bonjour à tous !

Et..... hop ! Une mise à jour

=LET(
t_;A2;
m_s;SEQUENCE(NBCAR(t_));
m_t;SI(STXT(t_;m_s;1)<>";";m_s;"");
SIERREUR(STXT(t_;MIN(m_t);MAX(m_t)-MIN(m_t)+1);"")
)

Merci à tous ;)

Rechercher des sujets similaires à "supprimer caractere situe fin debut"