Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

macro qui recherche plusieurs mots dans une cellule!

  • Initiateur de la discussion Initiateur de la discussion lenny561
  • 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 !

L

lenny561

Guest
bonsoir

je voudrai mettre en place une macro qui recherche plusieurs mots dans une cellule afin d'y incrémanté une valeur dans une autres cellule.

par ex: si en cellule a3 se momme ( paul et pierre et jack), incrémenté en cellule a1 le chiffre 1.De plus je voudrai qu'elle s'exécute sur chaque ligne. de la feuille.

merci
 
Re : macro qui recherche plusieurs mots dans une cellule!

Bonsoir,

Un exemple de fonction :

Si en A3 j'ai "paul et pierre et jack" dans une cellule je peux repérer l'existence de Paul et pierre comme suit
=SI(OU(ESTERREUR(CHERCHE("pierre";A3));ESTERREUR(CHERCHE("paul";A3)));"ko";"ok")


Est-ce la question?

gibi
 
Re : macro qui recherche plusieurs mots dans une cellule!

je pense que ce n'est nécessaire; voici un exemple avec une donné:

Sub Macro1()
'
' Macro1 Macro

'
If Worksheets("feuil1").Range("c6").Value = ("pierre") Then
Worksheets("feuil1").Range("a6").Value = ("1")

End If

End Sub

et voici ce que je veut faire, mais comme cela, ça ne fonctionne pas :

Sub Macro1()
'
' Macro1 Macro

'
If Worksheets("feuil1").Range("c6").Value = ("pierre" & "paul")) Then
Worksheets("feuil1").Range("a6").Value = ("1")

End If

End Sub


En version formule cela donnerai:

=SI(ET(ESTNUM(CHERCHE("pierre";C6));(ESTNUM(CHERCHE("paul";C6))));"1";"")
 
Re : macro qui recherche plusieurs mots dans une cellule!

Bonsoir lenny561,

Voici une solution.

Code:
Sub Macro1()
    Worksheets("Feuil1").Range("A6").Value = ""
    
    If Worksheets("Feuil1").Range("C6").Value Like "*pierre*" And _
        Worksheets("Feuil1").Range("C6").Value Like "*paul*" Then
        
        Worksheets("Feuil1").Range("A6").Value = "1"
    End If
End Sub
 
Re : macro qui recherche plusieurs mots dans une cellule!

cbea

Comment puis-je faire pour que cette macro fonctionne pour chaque cellule se positionnent entre "C1" et "C100"?

C'est à dire, a chaque fois que "pierre" et "paul" sont inscrit dans une cellule entre "C1" et "C100", inscrire "1" dans la cellule correspondant a la même ligne de la colonne "A".
 
Dernière modification par un modérateur:
Re : macro qui recherche plusieurs mots dans une cellule!

Essaye un truc comme ça :
Code:
Sub Macro1()
Dim I As Integer
With Worksheets("Feuil1")
For I = 1 To 100
    If .Cells(I, 3).Value Like "*pierre*" And .Cells(I, 3).Value Like "*paul*" Then
        .Cells(I, 1).Value = "1"
    Else
        .Cells(I, 1).Value = ""
    End If
Next I
End With
End Sub
 
Dernière édition:
Re : macro qui recherche plusieurs mots dans une cellule!

re,

Code:
Sub Macro1()
    Dim Lig As Long
    
    For Lig = 1 To 100
        Worksheets("Feuil1").Range("A" & Lig).Value = ""
        
        If Worksheets("Feuil1").Range("C" & Lig).Value Like "*pierre*" And _
            Worksheets("Feuil1").Range("C" & Lig).Value Like "*paul*" Then
            
            Worksheets("Feuil1").Range("A" & Lig).Value = "1"
        End If
    Next Lig
End Sub
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…