Remplacements dans une sélection
Résolu/Fermé
touroul
Messages postés
475
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
11 novembre 2024
-
17 oct. 2014 à 10:10
touroul Messages postés 475 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 11 novembre 2024 - 17 oct. 2014 à 20:40
touroul Messages postés 475 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 11 novembre 2024 - 17 oct. 2014 à 20:40
A voir également:
- Excel rechercher et remplacer dans une selection
- Rechercher ou entrer l'adresse - Guide
- Rechercher et remplacer word - Guide
- Si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
8 réponses
Mike-31
Messages postés
18351
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
12 décembre 2024
5 110
Modifié par Mike-31 le 17/10/2014 à 11:09
Modifié par Mike-31 le 17/10/2014 à 11:09
Bonjour,
Mais bien sur que si, tu commence par sélectionner ta plage A1:M980
ensuite tu ouvres l'assistant, onglet Accueil/module Édition/Rechercher et Sélectionner/Remplacer, dans rechercher tu saisis le texte à remplacer Paris;Toulouse;Carcassonne et dans remplacer tu saisis France et clic sur remplacer tout
Attention il faut que les saisis soient identiques, un seul espace et cela ne fonctionne pas, de même que si tu veux remplacer que Paris dans la chaine il faut dans Rechercher saisir uniquement Paris
ou il faut écrire une formule qui prendra en compte Paris ou Toulouse ou Carcassonne
et affichera France
exemple
=SI(OU(NB.SI(A4;"*Paris*")=1;NB.SI(A4;"*Toulouse*")=1;NB.SI(A4;"*Carcassonne*")=1);"France";"")
ensuite il suffit de faire un copier/collage spécial/valeur pour transformer les
formule par le texte
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mais bien sur que si, tu commence par sélectionner ta plage A1:M980
ensuite tu ouvres l'assistant, onglet Accueil/module Édition/Rechercher et Sélectionner/Remplacer, dans rechercher tu saisis le texte à remplacer Paris;Toulouse;Carcassonne et dans remplacer tu saisis France et clic sur remplacer tout
Attention il faut que les saisis soient identiques, un seul espace et cela ne fonctionne pas, de même que si tu veux remplacer que Paris dans la chaine il faut dans Rechercher saisir uniquement Paris
ou il faut écrire une formule qui prendra en compte Paris ou Toulouse ou Carcassonne
et affichera France
exemple
=SI(OU(NB.SI(A4;"*Paris*")=1;NB.SI(A4;"*Toulouse*")=1;NB.SI(A4;"*Carcassonne*")=1);"France";"")
ensuite il suffit de faire un copier/collage spécial/valeur pour transformer les
formule par le texte
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
touroul
Messages postés
475
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
11 novembre 2024
16
Modifié par touroul le 17/10/2014 à 11:25
Modifié par touroul le 17/10/2014 à 11:25
Salut Mike
Merci bien de t'y mettre.
Lorsque je suis ce que tu m'indiques, il me trouves bien des occurences, mais sans tenir compte de ma sélection.
Du coup, si je fais "Remplacer tout", il me remplace aussi les occurences en dehors de ma sélection.
Un exemple sur https://www.cjoint.com/?DJrlCWOPuJo
Autre chose : dans le champ de recherche, peut-on spécifier plusieurs valeurs à remplacer par la même chaîne ?
Si oui, comment séparer les valeurs ? Espace et ; ne fonctionnent pas.
Merci d'avance Mike
Merci bien de t'y mettre.
Lorsque je suis ce que tu m'indiques, il me trouves bien des occurences, mais sans tenir compte de ma sélection.
Du coup, si je fais "Remplacer tout", il me remplace aussi les occurences en dehors de ma sélection.
Un exemple sur https://www.cjoint.com/?DJrlCWOPuJo
Autre chose : dans le champ de recherche, peut-on spécifier plusieurs valeurs à remplacer par la même chaîne ?
Si oui, comment séparer les valeurs ? Espace et ; ne fonctionnent pas.
Merci d'avance Mike
Mike-31
Messages postés
18351
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
12 décembre 2024
5 110
17 oct. 2014 à 11:32
17 oct. 2014 à 11:32
Re,
Non cela marche très bien, tu sélectionnes bien ta plage en jaune A4:D15
tu vas chercher l'outil Remplacer dans Rechercher tu saisis Paris et dans Remplacer France, tu clic sur remplacer tout et tout tes Paris de la zone sélectionnée sont remplacé, et uniquement les valeurs de ton tableau jaune, MAIS IL FAUT QUE LA PLAGE SOIT ACTIVEE (sélectionnée)
pour la deuxième question, c'est non ou il faut passer par ma proposition avec formule ou plus compliqué avec un code VBA
Non cela marche très bien, tu sélectionnes bien ta plage en jaune A4:D15
tu vas chercher l'outil Remplacer dans Rechercher tu saisis Paris et dans Remplacer France, tu clic sur remplacer tout et tout tes Paris de la zone sélectionnée sont remplacé, et uniquement les valeurs de ton tableau jaune, MAIS IL FAUT QUE LA PLAGE SOIT ACTIVEE (sélectionnée)
pour la deuxième question, c'est non ou il faut passer par ma proposition avec formule ou plus compliqué avec un code VBA
touroul
Messages postés
475
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
11 novembre 2024
16
17 oct. 2014 à 12:14
17 oct. 2014 à 12:14
Tu avais raison, j'arrive à effectuer ce remplacement à présent, je ne sais pas ce que j'ai fichu tout à l'heure ... :)
La réalité est un peu différente pour mon fichier de plus de 1000 lignes qui contient une cinquantaine de mots à remplacer tous par France.
Comme il me paraissait difficile de se passer de macros, j'ai enregistré une macro et corrigé partiellement le code :
J'obtiens cette macro qui remplace Carcassonne dans ma sélection effectuée à la souris :
Option Explicit
Sub Rempl()
Dim ActSheet As Worksheet
Dim SelRange As Range
Set ActSheet = ActiveSheet
Set SelRange = Selection
Selection.Replace What:="Carcassonne", Replacement:="France", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActSheet.Select
SelRange.Select
End Sub
Cela fonctionne très bien ainsi.
Par contre, penses-tu possible de remplacer le What:="Carcassonne"
par What:="Tout ce qui se trouve dans la colonne F" ???
Voici le fichier avec la macro : https://www.cjoint.com/c/DJrmssVeYec
On avance, merci pour ton aide.
Je trouve le sujet passionnant.
La réalité est un peu différente pour mon fichier de plus de 1000 lignes qui contient une cinquantaine de mots à remplacer tous par France.
Comme il me paraissait difficile de se passer de macros, j'ai enregistré une macro et corrigé partiellement le code :
J'obtiens cette macro qui remplace Carcassonne dans ma sélection effectuée à la souris :
Option Explicit
Sub Rempl()
Dim ActSheet As Worksheet
Dim SelRange As Range
Set ActSheet = ActiveSheet
Set SelRange = Selection
Selection.Replace What:="Carcassonne", Replacement:="France", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActSheet.Select
SelRange.Select
End Sub
Cela fonctionne très bien ainsi.
Par contre, penses-tu possible de remplacer le What:="Carcassonne"
par What:="Tout ce qui se trouve dans la colonne F" ???
Voici le fichier avec la macro : https://www.cjoint.com/c/DJrmssVeYec
On avance, merci pour ton aide.
Je trouve le sujet passionnant.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mike-31
Messages postés
18351
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
12 décembre 2024
5 110
17 oct. 2014 à 14:32
17 oct. 2014 à 14:32
Re,
Tu pourrais partir sur un code simple placé dans un bouton activex
Private Sub CommandButton1_Click()
[A3:D15].Replace What:=[F3], Replacement:="France"
[A3:D15].Replace What:=[F4], Replacement:="France"
[A3:D15].Replace What:=[F5], Replacement:="France"
[A3:D15].Replace What:=[F6], Replacement:="France"
[A3:D15].Replace What:=[F7], Replacement:="France"
[A3:D15].Replace What:=[F8], Replacement:="France"
[A3:D15].Replace What:=[F9], Replacement:="France"
[A3:D15].Replace What:=[F10], Replacement:="France"
End Sub
on pourrait travailler avec des boucles ce qui raccourcirait le code mais le ralentirait
https://www.cjoint.com/?DJroLhCFAY4
Tu pourrais partir sur un code simple placé dans un bouton activex
Private Sub CommandButton1_Click()
[A3:D15].Replace What:=[F3], Replacement:="France"
[A3:D15].Replace What:=[F4], Replacement:="France"
[A3:D15].Replace What:=[F5], Replacement:="France"
[A3:D15].Replace What:=[F6], Replacement:="France"
[A3:D15].Replace What:=[F7], Replacement:="France"
[A3:D15].Replace What:=[F8], Replacement:="France"
[A3:D15].Replace What:=[F9], Replacement:="France"
[A3:D15].Replace What:=[F10], Replacement:="France"
End Sub
on pourrait travailler avec des boucles ce qui raccourcirait le code mais le ralentirait
https://www.cjoint.com/?DJroLhCFAY4
touroul
Messages postés
475
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
11 novembre 2024
16
Modifié par touroul le 17/10/2014 à 16:13
Modifié par touroul le 17/10/2014 à 16:13
Mmmmh oui, ça fonctionnerait.
Mais dans ce cas tu ne tiens pas compte de 2 conditions :
- La variabilité de la longueur du tableau (réglée par la sélection à la souris)
- Le fait que mon tableau comprend parfois 1000 lignes, difficile de recopier le code 1000 fois.
J'ai une autre solution, peut-être plus facile à mettre en oeuvre :
Ça fonctionnerait si, dans ma sélection à la souris, on remplaçait :
Toutes les cellules non-vides sauf celles comprenant "Fontenay; Marseille; Bordeaux" par Paris.
Une idée ?
Mais dans ce cas tu ne tiens pas compte de 2 conditions :
- La variabilité de la longueur du tableau (réglée par la sélection à la souris)
- Le fait que mon tableau comprend parfois 1000 lignes, difficile de recopier le code 1000 fois.
J'ai une autre solution, peut-être plus facile à mettre en oeuvre :
Ça fonctionnerait si, dans ma sélection à la souris, on remplaçait :
Toutes les cellules non-vides sauf celles comprenant "Fontenay; Marseille; Bordeaux" par Paris.
Une idée ?
Mike-31
Messages postés
18351
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
12 décembre 2024
5 110
17 oct. 2014 à 16:37
17 oct. 2014 à 16:37
Re,
il suffit de remplacer
[A3:D15] par selection
Private Sub CommandButton1_Click()
Selection.Replace What:=[F3], Replacement:="France"
Selection.Replace What:=[F4], Replacement:="France"
Selection.Replace What:=[F5], Replacement:="France"
Selection.Replace What:=[F6], Replacement:="France"
Selection.Replace What:=[F7], Replacement:="France"
Selection.Replace What:=[F8], Replacement:="France"
Selection.Replace What:=[F9], Replacement:="France"
Selection.Replace What:=[F10], Replacement:="France"
End Sub
il suffit de remplacer
[A3:D15] par selection
Private Sub CommandButton1_Click()
Selection.Replace What:=[F3], Replacement:="France"
Selection.Replace What:=[F4], Replacement:="France"
Selection.Replace What:=[F5], Replacement:="France"
Selection.Replace What:=[F6], Replacement:="France"
Selection.Replace What:=[F7], Replacement:="France"
Selection.Replace What:=[F8], Replacement:="France"
Selection.Replace What:=[F9], Replacement:="France"
Selection.Replace What:=[F10], Replacement:="France"
End Sub
touroul
Messages postés
475
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
11 novembre 2024
16
17 oct. 2014 à 20:40
17 oct. 2014 à 20:40
OK Mike
J'ai fini par y arriver en recopiant ces lignes avec tous les codes nécessaires.
Merci beaucoup
Bonne soirée
J'ai fini par y arriver en recopiant ces lignes avec tous les codes nécessaires.
Merci beaucoup
Bonne soirée