Surligner les mots qui se ressemblent
Fermé
guigui06
-
2 juil. 2013 à 10:29
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 15 mars 2023 - 2 juil. 2013 à 15:40
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 15 mars 2023 - 2 juil. 2013 à 15:40
A voir également:
- Comment surligner sur excel
- Liste déroulante excel - Guide
- Formule excel - Guide
- Déplacer une colonne excel - Guide
- Aller à la ligne excel - Guide
- Tableau croisé dynamique excel - Guide
2 réponses
jfqld
Messages postés
9080
Date d'inscription
jeudi 18 septembre 2008
Statut
Membre
Dernière intervention
28 mai 2018
125
2 juil. 2013 à 13:27
2 juil. 2013 à 13:27
tu cliques sur ta colonne pour qu elle soit entièrement en subrillance
dans ACCUEIL
mise en forme conditionnelle
Règle de mise en surbrillance des cellules
et tu cliques sur VALEUR EN DOUBLE
et tous les mots identiques se mettront en surbrillance
dans ACCUEIL
mise en forme conditionnelle
Règle de mise en surbrillance des cellules
et tu cliques sur VALEUR EN DOUBLE
et tous les mots identiques se mettront en surbrillance
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 mars 2023
2 712
2 juil. 2013 à 15:40
2 juil. 2013 à 15:40
Bonjour,
Par formule, c'est niet!
Par VBA, pourquoi pas.
J'ai trouvé pour toi, ICI, une fonction personnalisée qui transforme des chaînes de caractères en un code. Si les chaînes de caractères sont similaires, elles possèdent le même code, et donc tu peux repérer des quasi-doublons...
Mise en place :
- depuis un classeur excel, tapez ALT+F11
- Insertion/Module
- copié-collé ce code dans le module ainsi créé :
- fermer la fenêtre Visual Basic Editor
Utilisation :
En A1 saisir : point
En A2 saisir : poind
En A3 saisir : loind
En A4 saisir : moins
En B1 saisir la formule : =SOUNDEX(A1)
"étirer" cette formule vers le bas
En C1 saisir la formule : =SI(NB.SI(B:B;B1)>1;"Doublon";"")
"étirer" cette formule vers le bas...
Par formule, c'est niet!
Par VBA, pourquoi pas.
J'ai trouvé pour toi, ICI, une fonction personnalisée qui transforme des chaînes de caractères en un code. Si les chaînes de caractères sont similaires, elles possèdent le même code, et donc tu peux repérer des quasi-doublons...
Mise en place :
- depuis un classeur excel, tapez ALT+F11
- Insertion/Module
- copié-collé ce code dans le module ainsi créé :
Function SOUNDEX(Surname As String) As String
' Developed by Richard J. Yanco
' This function follows the Soundex rules given at
' http://home.utah-inter.net/kinsearch/Soundex.html
Dim Result As String, c As String * 1
Dim Location As Integer
Surname = UCase(Surname)
' First character must be a letter
If Asc(Left(Surname, 1)) < 65 Or Asc(Left(Surname, 1)) > 90 Then
SOUNDEX = ""
Exit Function
Else
' St. is converted to Saint
If Left(Surname, 3) = "ST." Then
Surname = "SAINT" & Mid(Surname, 4)
End If
' Convert to Soundex: letters to their appropriate digit,
' A,E,I,O,U,Y ("slash letters") to slashes
' H,W, and everything else to zero-length string
Result = Left(Surname, 1)
For Location = 2 To Len(Surname)
Result = Result & Category(Mid(Surname, Location, 1))
Next Location
' Remove double letters
Location = 2
Do While Location < Len(Result)
If Mid(Result, Location, 1) = Mid(Result, Location + 1, 1) Then
Result = Left(Result, Location) & Mid(Result, Location + 2)
Else
Location = Location + 1
End If
Loop
' If category of 1st letter equals 2nd character, remove 2nd character
If Category(Left(Result, 1)) = Mid(Result, 2, 1) Then
Result = Left(Result, 1) & Mid(Result, 3)
End If
' Remove slashes
For Location = 2 To Len(Result)
If Mid(Result, Location, 1) = "/" Then
Result = Left(Result, Location - 1) & Mid(Result, Location + 1)
End If
Next
' Trim or pad with zeroes as necessary
Select Case Len(Result)
Case 4
SOUNDEX = Result
Case Is < 4
SOUNDEX = Result & String(4 - Len(Result), "0")
Case Is > 4
SOUNDEX = Left(Result, 4)
End Select
End If
End Function
Private Function Category(c) As String
' Returns a Soundex code for a letter
Select Case True
Case c Like "[AEIOUY]"
Category = "/"
Case c Like "[BPFV]"
Category = "1"
Case c Like "[CSKGJQXZ]"
Category = "2"
Case c Like "[DT]"
Category = "3"
Case c = "L"
Category = "4"
Case c Like "[MN]"
Category = "5"
Case c = "R"
Category = "6"
Case Else 'This includes H and W, spaces, punctuation, etc.
Category = ""
End Select
End Function
- fermer la fenêtre Visual Basic Editor
Utilisation :
En A1 saisir : point
En A2 saisir : poind
En A3 saisir : loind
En A4 saisir : moins
En B1 saisir la formule : =SOUNDEX(A1)
"étirer" cette formule vers le bas
En C1 saisir la formule : =SI(NB.SI(B:B;B1)>1;"Doublon";"")
"étirer" cette formule vers le bas...
2 juil. 2013 à 15:13