Excel: remplacer les occurrences d'un caractère par un autre dans une chaîne?

14

Je veux une formule Excel qui va changer Haverford, PApour haverford,+pa. (Le texte est en minuscules et les espaces sont remplacés par des caractères plus.)

Les éléments suivants obtiendront le premier espace, mais pas tous:

=REPLACE(E19, SEARCH(" ", E19),1,"+")

Nick Heiner
la source

Réponses:

20

Une partie de ce que vous voulez faire peut être accomplie avec la fonction " SUBSTITUT ".

Cela remplacera des caractères spécifiques dans une chaîne de texte par les caractères que vous spécifiez, dans ce cas des espaces avec le symbole +.

Ensuite, pour changer la casse, utilisez la fonction " LOWER ".

Si vous imbriquez "SUBSTITUT" dans "INFÉRIEUR", vous devriez obtenir le changement que vous recherchez.

Le texte ci-dessous est extrait de l'aide d'Excel.


REMPLACER

Remplace new_text par old_text dans une chaîne de texte. Utilisez SUBSTITUTE lorsque vous souhaitez remplacer un texte spécifique dans une chaîne de texte; utilisez REMPLACER lorsque vous souhaitez remplacer tout texte apparaissant à un emplacement spécifique dans une chaîne de texte.

Syntaxe

SUBSTITUT (texte, ancien_texte, nouveau_texte, numéro_instance)

Le texte est le texte ou la référence à une cellule contenant du texte pour lequel vous souhaitez remplacer des caractères.

Old_text est le texte que vous souhaitez remplacer.

New_text est le texte que vous souhaitez remplacer old_text par.

Instance_num spécifie l'occurrence de old_text que vous souhaitez remplacer par new_text. Si vous spécifiez instance_num, seule cette instance de old_text est remplacée. Sinon, chaque occurrence de old_text dans le texte est remplacée par new_text.


INFÉRIEUR

Convertit toutes les lettres majuscules d'une chaîne de texte en minuscules.

Syntaxe

INFÉRIEUR (texte)

Le texte est le texte que vous souhaitez convertir en minuscules. LOWER ne modifie pas les caractères du texte qui ne sont pas des lettres.

Kije
la source
9

Si vous souhaitez remplacer tous les espaces par le caractère «+», essayez:

= INFÉRIEUR (SUBSTITUT (E19, "", "+"))
pelms
la source
1
Un exemple vaut mille définitions de fonctions.
Even Mien
0

Pourquoi ne pas simplement utiliser find and replace pour remplacer la chaîne entière de Haverford, PA par celle que vous voulez. Vous ne devriez pas avoir besoin d'une formule pour cela, juste l'outil de recherche et de remplacement intégré.

MDMarra
la source
ce n'est pas qu'une chose unique. Les utilisateurs mettront des chaînes conviviales, mais j'en ai besoin sous une forme différente pour les URL.
Nick Heiner