Comparer 2 chaines de caractères

  • Initiateur de la discussion Initiateur de la discussion Holeshotman
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

H

Holeshotman

Guest
Bonjour le forum !

Je fais appel à vous dans l'espoir que vous puissiez me donner un petit coup de pouce !

Ce que je souhaite faire est indiqué dans le fichier joint (un exemple concret vaut mieux qu'un long discours 😛)

J'ai essayé d'adapter une macro en utilisant la fonction Instr(), mais quelque chose doit m'échapper ...

Code:
Sub RechercheMot()

Dim i As Integer

For i = 1 To Range("A65536").End(xlUp).Row
If InStr(1, Cells(i, 1).Value, Cells(i, 1), vbTextCompare) = 0 Then
        MsgBox ("Ok")
        Exit Sub
    End If
Next i
End Sub

Je vais continuer de rechercher voir si je peux pas faire autrement en attendant vos propositions.
Merci beaucoup ! 😱
 

Pièces jointes

Re : Comparer 2 chaines de caractères

Bonjour Holeshotman, salut Pierre 🙂

On peut aussi utiliser :

Code:
Function compare(mot$, a$) As Byte
compare = Sgn(InStr(" " & a & " ", " " & mot & " "))
End Function
Edit : on peut surtout utiliser cette formule en C1 :

Code:
=--ESTNUM(CHERCHE(" "&A1&" ";" "&B1&" "))
A+
 
Dernière édition:
Re : Comparer 2 chaines de caractères

C'est vraiment pile poil ce que je voulais ! Merci beaucoup à vous 2 pour ces propositions de code.

Et si admettons, la liste issue de l'extraction ne se trouve plus en colonne B, mais dans une colonne d'une autre feuille du fichier, pensez-vous que l'on puisse conserver cette fonction ?
Ou faut-il prévoir quelque chose de différent ?

Je vous joins l'exemple associé à mon idée.

Merci encore ! 😛
 

Pièces jointes

Re : Comparer 2 chaines de caractères

Re,

Pour ce problème, pas besoin de VBA, formule en C2 :

Code:
=SOMME.SI(Feuil2!F:F;A2;Feuil2!G:G)+SOMME.SI(Feuil2!F:F;A2&" *";Feuil2!G:G)+SOMME.SI(Feuil2!F:F;"* "&A2&" *";Feuil2!G:G)+SOMME.SI(Feuil2!F:F;"* "&A2;Feuil2!G:G)
Les 4 SOMME.SI traitent tous les cas de figure.

Fichier joint.

A+
 

Pièces jointes

Re : Comparer 2 chaines de caractères

PierreJean, Job75,

Merci beaucoup pour vos réponses ! Je vais essayer de comprendre un peu mieux les solutions proposées 😎
Je pensais pas qu'une formule puisse faire l'affaire, mais en effet c'est aussi simple !

Bonne journée à vous et à l'ensemble du forum ! 🙂
 
Re : Comparer 2 chaines de caractères

Cela fait un petit moment que j'utilise la fonction DECALER sans vraiment la comprendre ..
C'est le moment de m'y mettre pour la réutiliser moi même par la suite ! 😎
 
Re : Comparer 2 chaines de caractères

Bonjour le forum !

PierreJean,

En ce qui concerne votre proposition avec code vba, si en feuille 2, les colonnes F et G ne sont pas cote à cote, faut-il créer un "tablo3" dans le code ? Je suis un peu bloqué par rapport à ça ...

J'ai mis le fichier en pièce jointe pour que ce soit plus clair.

De plus, je ne comprends pas tout et ça me chagrine un peu (création de "dico" et de "scripting.dictionary" ainsi que le UBound et LBound). Je suis preneur d'explications ! 🙂

Merci beaucoup par avance !
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour