Fonction d'anagramme [ savoir si le mot est ok ]

Contenu du snippet

Cette fonction renvoie Vrai si dans la variable Search (Le mot où chercher) on trouve chacune des lettres trouvés dans la variable Mot.
Elle renvoie Faux au cas contraire.
Attention, elle ne fonctionne pas pour les mots où deux lettres sont identiques.
Exemple :
Le mot est "Coucou"
Le texte où chercher est "Couuuu"
Il renverra Vrai puisque dans le texte où chercher on trouve bien chaque lettres du mot.
Evitez les anagrammes du genre "niche", "chien", "chine", ou "cave", "avec" etc...

Source / Exemple :


Public Function Trouver_Mot(Mot As String, Search As String) As Boolean
On Error Resume Next
If Len(Search) = Len(Mot) Then 'Si la longueur du mot a vérifier est bien celle du mot alors
Mot = LCase(Mot) 'Le mot est maintenant en minuscule
Search = LCase(Search) 'Le texte dans lequel on cherche aussi
For i = 0 To Len(Mot) - 1 'On vérifi lettre par lettre
If InStr(1, Search, Mid(Mot, i + 1, 1)) <> 0 Then 'Si la lettre est bien dans le mot alors
Trouver_Mot = True 'La fonction renvoi Vrai
Else 'Sinon
Trouver_Mot = False 'Elle renvoi Faux
End If
If Trouver_Mot = False Then Exit Function 'Si une des lettres n'a pas été trouvé alors on laisse tomber
Next i
End If
End Function
'Utilisation :
Private Sub cmd1_Click()
If Trouver_Mot("VbFrance", "vBfRaNcE") = True Then MsgBox "Mot trouvé" Else: MsgBox "Mot non trouvé" 'Si le mot est trouvé, on informe
End Sub

Conclusion :


Bon voila j'éspère que ça servira à pas mal d'entre nous :]

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.