Remplacer automatiquement

Fermé
wom - Modifié par wom le 16/06/2016 à 10:24
 wom - 16 juin 2016 à 11:39
Bonjour tout le monde du forum,

Je me permet de venir vers vous car j'aimerai pouvoir remplacer automatiquement différents mots en fonction d'une liste de référence.

Je m'explique dans des bases de données que j'insère dans un fichier il y a beaucoup de diminutif de métier, comme plomb pour plombier, cuis. pour cuisinier ect

J'ai recenser tous les diminutifs utiliser dans un tableau et les ai fait correspondre avec le mot souhaiter j'ai donc :

A B
Plomb Plombier
Cuis. Cuisinier
Cuisine Cuisiner
Aide.Mé Aide menagere
Aide ménagère Aide menagere
ect

La fonction rechercher/remplacer fonctionne bien mais j'aimerai l'automatiser avec un bouton car j'ai au moins 10 feuilles de base de données donc ce n'est pas pratique surtout qu'en plus j'ai bien 30 ligne de diminutif a changer.

Je pensais à du VBA mais je suis très limiter en compétence ... pouvez vous m'aider?
Car j'aimerai ne pas insérer de nouvelles colonnes a chaque fois car les BDD seront amenées a être mises a Jour

Merci


A voir également:

1 réponse

pcenpanne77124 Messages postés 217 Date d'inscription vendredi 27 mai 2016 Statut Membre Dernière intervention 10 novembre 2020 11
16 juin 2016 à 10:30
heu t'es sur quel logiciel?
Excel?
0
Oui excel 2007 pardon
0
[code]
Sub RemplacerListeDeMots()
'-------------------------------------------------
'Cette macro a pour rôle de remplacer les mots d'un
' document par une liste de
'mots se trouvant dans une table à deux colonnes
'------------------------------------------------

'Affectation de la table
Set oTbl = Feuil3
'Boucle sur les cellules de la table
For Each oRow In oTbl.Rows
'Sélection du document cible
Feuil4.Select
Feuil5.Select
Feuil6.Select
Selection.HomeKey unit:=wdStory
With Selection.Find
.ClearFormatting
.Forward = True
.Text = Nexttext(oRow.Cells(1).Range.Text) 'utilisation de notre fonction
.Replacement.Text = NetText(oRow.Cells(2).Range.Text) 'utilisation de notre fonction
.Replacement.ClearFormatting
.Execute Replace:=wdReplaceAll
End With

Next oRow
'Libération des objets
Set oDlg = Nothing
Set oTbl = Nothing


End Sub

[code]

Voila ce que j'ai commencer a faire mais ca ne fonctionne pas...

La tableau où j'ai ma liste de référence est en feuille 3 et jaimerais que le remplacement se fasse sur les feuilles 4,5,6,7,8,9
0