Note: The other languages of the website are Google-translated. Back to English

Comment trouver et remplacer plusieurs valeurs à la fois dans Excel?

doc multiple trouver remplacer 1

Comme nous le savons tous, nous pouvons utiliser la fonction Rechercher et remplacer pour rechercher plusieurs cellules identiques et les remplacer par une valeur selon vos besoins. Mais parfois, vous devez appliquer le remplacement plusieurs-à-plusieurs simultanément. Par exemple, j'ai une gamme de données, et maintenant je veux remplacer toutes les pommes par des pommes rouges, des oranges par des oranges vertes, des bananes par des bananes jaunes et ainsi de suite comme les captures d'écran suivantes, avez-vous de bonnes idées pour résoudre cette tâche dans Exceller?

Rechercher et remplacer plusieurs valeurs à la fois avec le code VBA


flèche bleue bulle droite Rechercher et remplacer plusieurs valeurs à la fois avec le code VBA

Si vous êtes fatigué de rechercher et de remplacer les valeurs à maintes reprises, le code VBA suivant peut vous aider à remplacer plusieurs valeurs par vos textes nécessaires à la fois.

1. Veuillez créer les conditions que vous souhaitez utiliser qui contiennent les valeurs d'origine et les nouvelles valeurs. Voir la capture d'écran:

doc multiple trouver remplacer 2

2. Puis maintenez le ALT + F11 clés pour ouvrir le Fenêtre Microsoft Visual Basic pour Applications.

3. Cliquez insérer > Moduleet collez le code suivant dans la fenêtre Module.

Code VBA: recherchez et remplacez plusieurs valeurs à la fois

Sub MultiFindNReplace()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, ReplaceRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Original Range ", xTitleId, InputRng.Address, Type:=8)
Set ReplaceRng = Application.InputBox("Replace Range :", xTitleId, Type:=8)
Application.ScreenUpdating = False
For Each Rng In ReplaceRng.Columns(1).Cells
    InputRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value
Next
Application.ScreenUpdating = True
End Sub

4. Puis appuyez F5 clé pour exécuter ce code, dans la boîte de dialogue pop-out, veuillez spécifier la plage de données que vous souhaitez remplacer les valeurs par de nouvelles valeurs.

doc multiple trouver remplacer 3

5. Cliquez OK, et une autre boîte de dialogue s'affiche pour vous rappeler de sélectionner les critères que vous avez créés à l'étape 1. Voir capture d'écran:

doc multiple trouver remplacer 4

6. Puis clique OK, toutes les valeurs spécifiques ont été remplacées par les nouvelles valeurs dont vous avez besoin immédiatement.

doc multiple trouver remplacer 5


Articles Liés:

Comment rechercher et remplacer du texte spécifique dans les zones de texte?

Comment rechercher et remplacer du texte dans les titres des graphiques dans Excel?

Comment rechercher et remplacer du texte dans les commentaires dans Excel?

Comment modifier plusieurs chemins d'hyperliens à la fois dans Excel?

 


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine

 

Commentaires (132)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Cela n'a pas fonctionné pour moi. J'utilise Excel 2010. Il m'a demandé la plage d'origine et la nouvelle plage a ensuite échoué sans message. Rien n'a été remplacé. Je vais continuer à chercher un moyen de le faire.
Ce commentaire a été minimisé par le modérateur sur le site
Merci de ne pas tenir compte de mon dernier commentaire. Je le faisais mal. Cela a bien fonctionné !
Ce commentaire a été minimisé par le modérateur sur le site
[quote]Veuillez ne pas tenir compte de mon dernier commentaire. Je le faisais mal. Cela a bien fonctionné !Par Ken Long[/quote] Cela ne fonctionne pas pour moi. Comment faisiez-vous mal. Je n'ai aucune connaissance en VBA.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, j'ai essayé d'utiliser cette macro pour traduire les mesures. Ligne à traduire : perles mesurent environ : 11/16 pouces de large valeurs de remplacement : 1/32 0,794 mm 1/16 1,588 11 mm . . . 16/17,463 1 1 mm . . . 25,400/11,588 1 16 mm Ligne de résultat : Les perles mesurent environ : XNUMX XNUMX mm La largeur en pouces est incorrecte Problème : Le code utilise la valeur de XNUMX/XNUMX et la remplace Comment puis-je résoudre ce problème ? (Si j'utilise LookAt:=xlWhole dans une autre macro, je n'obtiens aucun résultat)
Ce commentaire a été minimisé par le modérateur sur le site
Salut, merci. Puis-je le rendre sensible à la casse ?
Ce commentaire a été minimisé par le modérateur sur le site
OMG, je suis témoin de Jésus ici !!
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, j'ai essayé d'utiliser ce code en remplaçant plusieurs nombres par le texte correspondant. J'ai un grand ensemble de données allant de 1 -> 112000, mais lorsque j'essaie de convertir 1 en sa valeur de chaîne correspondante (par exemple, Apple), cela se traduira par chaque 1 numérique dans la colonne. Par conséquent, 112000 sera affiché sous la forme AppleAppleOrange000. Existe-t-il un moyen dans ce processus Kutools, comme l'outil de recherche/remplacement d'Excel, de rechercher/remplacer des cas de correspondance spécifiques ?
Ce commentaire a été minimisé par le modérateur sur le site
Vous devez ajouter le paramètre suivant : MatchCase:=True Par exemple, ajoutez-le à la ligne ci-dessous : InputRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value, MatchCase:= Vrai Ceci trouvera et remplacera uniquement les éléments qui correspondent à la casse dans la plage que vous avez sélectionnée.
Ce commentaire a été minimisé par le modérateur sur le site
Pouvez-vous réécrire le code pour vous assurer que nous avons bien compris ?
Ce commentaire a été minimisé par le modérateur sur le site
Cela n'a pas fonctionné pour moi, aidez à réécrire le code, s'il vous plaît
Ce commentaire a été minimisé par le modérateur sur le site
existe-t-il un moyen de définir par défaut la plage d'origine sur 'Tab1' ? $4: $42
Ce commentaire a été minimisé par le modérateur sur le site
A fonctionné comme un charme! Merci pour le code et les instructions détaillées... Vous avez sauvé mes deux jours... Que Dieu vous bénisse !!
Ce commentaire a été minimisé par le modérateur sur le site
FORMAT ORIGINAL : 1 po ID X 2-1/2 po OD X 40 po Longueur 1 po ID X 2-1/2 po OD X 10 po Longueur 1 po ID X 2-1/2 po OD X 20 po Longueur 1 po ID X 2-1/2 po OD X 10 po Longueur 9-1/2 po ID X 14 po OD X 12 po Longueur FORMAT REQUIS : ID 1 x OD 2-1/2 x LG 40 IN ID 1 x OD 2- 1/2 x LG 10 IN ID 1 x OD 2-1/2 x LG 20 IN ID 1 x OD 2-1/2 x LG 10 IN ID 9-1/2 x OD 14 x LG 12 IN VEUILLEZ ME DIRE FORMULAIRE L'EXEMPLE DONNÉ, COMMENT REMPLACER LE FORMAT ORIGINAL AU FORMAT REQUIS DANS EXCEL
Ce commentaire a été minimisé par le modérateur sur le site
Merci ça m'a aidé
Ce commentaire a été minimisé par le modérateur sur le site
La macro ne fonctionne pas pour une correspondance exacte. Comme il y a deux catégories ABC et ABC 2. Trouvez et remplacez ABC par RRR et ABC 2 par TTT afin que Macro change ABC 2 en RRR 2 au lieu de TTT.
Ce commentaire a été minimisé par le modérateur sur le site
Remplacez d'abord ABC 2 par TTT puis ABC par RRR
Ce commentaire a été minimisé par le modérateur sur le site
Sous "Plage d'origine", vous affichez $A$2:$A$10, ce qui suggère qu'il se trouve dans une seule feuille. Comment puis-je sélectionner le classeur entier ici ?
Ce commentaire a été minimisé par le modérateur sur le site
Ouah!!! Merci beaucoup! A fonctionné comme un bijou.
Ce commentaire a été minimisé par le modérateur sur le site
Fonctionne comme un charme ! Merci beaucoup :D (Y)
Ce commentaire a été minimisé par le modérateur sur le site
J'ai utilisé le code ci-dessus pour remplacer les nombres, mais 11 et 1 sont remplacés.
Ce commentaire a été minimisé par le modérateur sur le site
Sub MultiFindNReplace() 'Mise à jour 20140722 Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "KutoolsforExcel" Set InputRng = Application.Selection Set InputRng = Application.InputBox("Original Range ", xTitleId, InputRng.Address, Type: =8) Set ReplaceRng = Application.InputBox("Replace Range :", xTitleId, Type:=8) Application.ScreenUpdating = False For Each Rng In ReplaceRng.Columns(1).Cells InputRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value, lookat:=xlwhole Next Application.ScreenUpdating = True End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Oui!! Merci pour ce code, il a fonctionné comme un charme
Ce commentaire a été minimisé par le modérateur sur le site
Cela ne fonctionne pas non plus lorsque vous essayez de remplacer une colonne de valeurs numériques par d'autres valeurs numériques du tableau croisé dynamique. C'est ce que j'obtiens pour avoir essayé de faire des choses simples pour automatiser des trucs dans Excel spreadshit.
Ce commentaire a été minimisé par le modérateur sur le site
Merci. Il fonctionne très bien.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai le même problème où si 2 noms sont similaires, par exemple si je voulais remplacer TEACHER par 1 et TEACHER ASSIST par 2, cela remplacerait TEACHER par 1 et TEACHER ASSIST par 1 ASSIST. Comment pourrais-je l'obtenir pour remplacer la phrase EXACT ?
Ce commentaire a été minimisé par le modérateur sur le site
Merci beaucoup. C'était assez utile et m'a sauvé 1 heure de travail
Ce commentaire a été minimisé par le modérateur sur le site
J'ai deux colonnes, la 1ère colonne est la liste sur le numéro 1,2,3.... 22,23,... La deuxième colonne avec la liste des chaînes. Au lieu de remplacer la valeur de 12 par une valeur de chaîne. Il le remplace par des chaînes de 1 et 2. Quelqu'un sait-il comment trier cela ?
Ce commentaire a été minimisé par le modérateur sur le site
J'ai 3 colonnes comme ci-dessous, 1 multimètre 2 lampe de test 3 ohmmètre 4 testeur de résistance 5 boucle de défaut 12 testeur RCD 24 RCD portable 13 rallonge La troisième colonne a le numéro 1,2...50. Il y a environ 36000 12 lignes. Il remplace 1 par les valeurs des lignes 2 et 12 au lieu de XNUMX. Quelqu'un sait-il comment résoudre ce problème ?
Il n'y a pas encore de commentaires postés ici
TÉLÉCHARGER PLUS
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés