Doublons complexes
Résolu
Lyne450
Messages postés
2
Statut
Membre
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaiterais me débarrasser de doublons dans un tableur. Ce sont des noms d'entreprises dans une seule colonne. Mais, ce n'est pas si simple certaines ne sont pas bien écrit.
Exemple :
L'entreprise "Blabla" peut-être inscrite sous le nom : "Blabla entreprise", "Société Blabla", "Blabla SAS", etc.
En fait j'aimerais un outil du type "rechercher/remplacer" qui me donne les trucs qu'il trouve louche (comme les exemples que j'ai mis ci-dessus) et que ce soit à moi de confirmer s'il doit le supprimer ou non. J'ai beaucoup de noms de société, je ne peux utiliser l'outil "rechercher/remplacer".
Est-ce possible ? (dites-moi que oui pitié)
MERCI D'AVANCE,
Lyne450
Je souhaiterais me débarrasser de doublons dans un tableur. Ce sont des noms d'entreprises dans une seule colonne. Mais, ce n'est pas si simple certaines ne sont pas bien écrit.
Exemple :
L'entreprise "Blabla" peut-être inscrite sous le nom : "Blabla entreprise", "Société Blabla", "Blabla SAS", etc.
En fait j'aimerais un outil du type "rechercher/remplacer" qui me donne les trucs qu'il trouve louche (comme les exemples que j'ai mis ci-dessus) et que ce soit à moi de confirmer s'il doit le supprimer ou non. J'ai beaucoup de noms de société, je ne peux utiliser l'outil "rechercher/remplacer".
Est-ce possible ? (dites-moi que oui pitié)
MERCI D'AVANCE,
Lyne450
A voir également:
- Doublons complexes
- Doublons photos - Guide
- Supprimer les doublons excel - Guide
- Comment supprimer les doublons photos sur pc gratuitement - Télécharger - Nettoyage
- Supprimer les doublons (excel 2003) ✓ - Forum Excel
- Notepad++ supprimer les doublons - Forum Programmation
5 réponses
Bonjour,
un exemple de code a mettre dans un module VBA:
ouverture VBA: touche Alt+F11
fenetre en haut a gauche cick droit sur microsoft........
insersion------>module
double click gauche sur module1
copier le code dans la partie droite de la fenetre
pour lancer:
EXCEL2007
menu--->developpeur---->macro---->Cmd....
EXCEL2003:
menu---->Outils--->macro--->macro----->Cmd.......
Bonne suite
un exemple de code a mettre dans un module VBA:
ouverture VBA: touche Alt+F11
fenetre en haut a gauche cick droit sur microsoft........
insersion------>module
double click gauche sur module1
copier le code dans la partie droite de la fenetre
Sub Cmd_Detec_Doublon_Click()
Dim T_ColA, NbLig, LDep, Defil, retval
Do While -1
With Sheets("feuil1")
'pour la dernière ligne de la colonne A
derlig = Range("A" & Rows.Count).End(xlUp).Row
'Mise en memoire pour recheche plus rapide
Set T_ColA = .Range("A1:A" & derlig)
Choix = "2012"
Choix = InputBox("Saisie Entreprise: ", "Suppression Doublons")
If Choix <> "" And Choix <> "2012" Then
'Recheche du nombre de lignes consernees
NbLig = Application.CountIf(T_ColA, "*" & Choix & "*")
'Test pour suite
If NbLig > 0 Then
LDep = 1
For Defil = 1 To NbLig
'Recherche de la position des nom pour question: supprime O/N
LDep = .Columns("A").Find(Choix, .Cells(LDep, "A"), , xlPart).Row
'Choix: supprime O/N
retval = MsgBox("Suppression Doublon" & vbLf & .Range("A" & LDep), vbYesNo)
If retval = vbYes Then
'Suppression cellule
.Range("A" & LDep).Delete Shift:=xlUp
LDep = LDep - 1
Else
'passe
End If
Next Defil
Else
MsgBox "Pas trouvé!!!!!", vbOKOnly
End If
Else
'sortie
MsgBox "Ah!Que coucou!!!!!", vbOKOnly
Exit Sub
End If
End With
Loop
End Sub
pour lancer:
EXCEL2007
menu--->developpeur---->macro---->Cmd....
EXCEL2003:
menu---->Outils--->macro--->macro----->Cmd.......
Bonne suite
Bonjour
Pouvez vous trier votre liste d'entreprises
pour mettre toutes les entreprises commencent par "société" ensemble et mettre cette formule dans une colonne adjacente
=STXT(A3;CHERCHE(" ";A3;1)+1;NBCAR(A3)-CHERCHE(" ";A3;1)+1)
cela vous donnera "Blabla" si la cellule contient "sociéte Blabla"
Pour toutes les autres qui commence par Blabla mettre cette formule
=STXT(A4;1;CHERCHE(" ";A4;1))
et vous obtiendrez "Blabla" le nom de la société a une condition que le nom soit séparé du reste par un espace et qu'il n'y ai pas de nom composé.
Pouvez vous trier votre liste d'entreprises
pour mettre toutes les entreprises commencent par "société" ensemble et mettre cette formule dans une colonne adjacente
=STXT(A3;CHERCHE(" ";A3;1)+1;NBCAR(A3)-CHERCHE(" ";A3;1)+1)
cela vous donnera "Blabla" si la cellule contient "sociéte Blabla"
Pour toutes les autres qui commence par Blabla mettre cette formule
=STXT(A4;1;CHERCHE(" ";A4;1))
et vous obtiendrez "Blabla" le nom de la société a une condition que le nom soit séparé du reste par un espace et qu'il n'y ai pas de nom composé.
Bonjour,
un exemple de code.
Code a copier dans un module VBA:
Ouvrir VBA: touches Alt+F11
click droit sur microsoft..........
insersion module
double click gauche sur Module1
click droit sur fenetre a droite
Copier le code
pour lancer:
EXCEL2007
menu, developpeur, macro, Cmd....
EXCEL2003
menu, outils, macro, macro, Cmd......
Bonne suite
un exemple de code.
Code a copier dans un module VBA:
Ouvrir VBA: touches Alt+F11
click droit sur microsoft..........
insersion module
double click gauche sur Module1
click droit sur fenetre a droite
Copier le code
Sub Cmd_Detec_Doublon_Click()
Dim T_ColA, NbLig, LDep, Defil, retval
Do While -1
With Sheets("feuil1")
'pour la dernière ligne de la colonne A
derlig = Range("A" & Rows.Count).End(xlUp).Row
'Mise en memoire pour recheche plus rapide
Set T_ColA = .Range("A1:A" & derlig)
Choix = "2012"
Choix = InputBox("Saisie Entreprise: ", "Suppression Doublons")
If Choix <> "" And Choix <> "2012" Then
'Recheche du nombre de lignes consernees
NbLig = Application.CountIf(T_ColA, "*" & Choix & "*")
'Test pour suite
If NbLig > 0 Then
LDep = 1
For Defil = 1 To NbLig
'Recherche de la position des nom pour question: supprime O/N
LDep = .Columns("A").Find(Choix, .Cells(LDep, "A"), , xlPart).Row
'Choix: supprime O/N
retval = MsgBox("Suppression Doublon" & vbLf & .Range("A" & LDep), vbYesNo)
If retval = vbYes Then
'Suppression cellule
.Range("A" & LDep).Delete Shift:=xlUp
LDep = LDep - 1
Else
'passe
End If
Next Defil
Else
MsgBox "Pas trouvé!!!!!", vbOKOnly
End If
Else
'sortie
MsgBox "Ah!Que coucou!!!!!", vbOKOnly
Exit Sub
End If
End With
Loop
End Sub
pour lancer:
EXCEL2007
menu, developpeur, macro, Cmd....
EXCEL2003
menu, outils, macro, macro, Cmd......
Bonne suite
Bonjour,
Une macro qui supprime les doublons exacts (avec demande confirmation) puis dresse une liste de mots clés pour les entreprises.
Dans une deuxième feuille tu peux lister les mots clés qui ne sont pas considérés comme caractéristiques (entreprise, Société, SA,..) pour ne garder que les mots clés essentiels (ceux que tu n'as pas listé comme Blabla)
Ces mots clés sont triés et inscrits en colonne B si au moins 2 entreprises ont ces mots clés.
Un double-clic sur les mots clés supprime la ligne.
fichier exemple : https://www.cjoint.com/?BJlureJtjaA
eric
Une macro qui supprime les doublons exacts (avec demande confirmation) puis dresse une liste de mots clés pour les entreprises.
Dans une deuxième feuille tu peux lister les mots clés qui ne sont pas considérés comme caractéristiques (entreprise, Société, SA,..) pour ne garder que les mots clés essentiels (ceux que tu n'as pas listé comme Blabla)
Ces mots clés sont triés et inscrits en colonne B si au moins 2 entreprises ont ces mots clés.
Un double-clic sur les mots clés supprime la ligne.
fichier exemple : https://www.cjoint.com/?BJlureJtjaA
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
f894009 et PHILOU10120,
Merci beaucoup pour vos réponses rapides.
Malheureusement je ne peux pas appliquer vos solutions dans mon document : j'ai trop d'entrées pour pouvoir entrer un mot clé. Le macro doit fonctionner seul : je ne peux lui donner aucune info.
Et c'est ce dernier point qui m'amène à m'exclamer :
==== > WA - OU !
Eric : ton document est un vrai bijoux ! C'est exactement l'outil qu'il me fallait !
Merci, merci, merci, d'avoir compris mon soucis, si je le pouvais, je t'embrasserais (mais bon...)
Lyne
Merci beaucoup pour vos réponses rapides.
Malheureusement je ne peux pas appliquer vos solutions dans mon document : j'ai trop d'entrées pour pouvoir entrer un mot clé. Le macro doit fonctionner seul : je ne peux lui donner aucune info.
Et c'est ce dernier point qui m'amène à m'exclamer :
==== > WA - OU !
Eric : ton document est un vrai bijoux ! C'est exactement l'outil qu'il me fallait !
Merci, merci, merci, d'avoir compris mon soucis, si je le pouvais, je t'embrasserais (mais bon...)
Lyne