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

Recherche mot dans une colonne (phrases dans cellules)

hidozo

XLDnaute Occasionnel
Bonjour, je cherche à mettre "X" dans colonne B si dans les cellules de la colonne A il y a le mot "lui"

Sub RRREEECCC()
Dim derlig, i, Rec

derlig = Range("A65000").End(xlUp).Row

Worksheets("Feuil1").Select

For i = 2 To derlig

Rec = "*" & "lui" & "*"
If InStrRev(Cells(i, 1), Rec, 1, 1) <> 0 Then
Worksheets("Feuil1").Cells(i, 2) = "X"
End If
next i
end sub

Ca marche pas !!!!!!!

Quelqu'un aurit-il une idée ?

Cordialement

Hidozo
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Recherche mot dans une colonne (phrases dans cellules)

Bonjour Hidozo,

voir exemple en pièce jointe sans macro

à+
Philippe
 

Pièces jointes

  • 111.xls
    27.5 KB · Affichages: 111
  • 111.xls
    27.5 KB · Affichages: 110
  • 111.xls
    27.5 KB · Affichages: 110

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Recherche mot dans une colonne (phrases dans cellules)

Re,

avec ceci:
Code:
Sub Macro1()
Dim cel As Range
For Each cel In Range("A1:A65535")
If cel.Value Like "*lui*" Then
cel.Offset(0, 1).Value = "X"
End If
Next cel
End Sub

à+
Philippe
 

Victor21

XLDnaute Barbatruc
Re : Recherche mot dans une colonne (phrases dans cellules)

Bonjour.

La même que Philippe collée par macro
VB:
 Sub RRREEECCC()
Dim derlig, i
derlig = Range("A65000").End(xlUp).Row
Worksheets("Feuil1").Select
For i = 2 To derlig
Cells(i, 2).FormulaR1C1 = "=IF(ISERROR(FIND(""lui"",RC[-1])),"""",""X"")"
Next i
End Sub

Edit : la première... Trop lent, le Victor, et pas très performant sur ce coup !
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Recherche mot dans une colonne (phrases dans cellules)

Re,

Bonjour Victor


au cas ou il y aurait une ou plusieurs lettres en majuscules, il faut prendre ceci:
Code:
Sub Macro1()
Dim cel As Range
For Each cel In Range("A1:A" & Range("A65535").End(xlUp).Row)
If UCase(cel.Value) Like "*LUI*" Then
cel.Offset(0, 2).Value = "X"
End If
Next cel
End Sub

à+
Philippe
 

job75

XLDnaute Barbatruc
Re : Recherche mot dans une colonne (phrases dans cellules)

Bonjour le fil,

On plaisante il me semble

Code:
Sub RRREEECCC()
'FIND respecte la casse, SEARCH non
With [B1].Resize(Range("A65000").End(xlUp).Row)
   .FormulaR1C1 = "=If(ISERROR(SEARCH(""lui"",RC1)),"""",""X"")"
   .Value = .Value 'facultatif, supprime les formules
End With
End Sub
Edit : si la 1ère ligne est pour les titres, il suffit de remplacer [B1] par [B2].

A+
 
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Recherche mot dans une colonne (phrases dans cellules)

Re,
re,

Merci,

le cel.offset(0,1) cela veut dire une colonne plus loin si je me trompe pas.

pour être plus précis:
sur la même ligne ---------> 0
une colonne vers la droite -> 1

si les valeurs son négatives on remonte d'une ligne ou on déplace vers la gauche

à+
Philippe
 

hidozo

XLDnaute Occasionnel
Re : Recherche mot dans une colonne (phrases dans cellules)

Bonjour,

Merci pour vos réponses qui m'ont super bien aidée.

Voici le code que j'ai adapté et qui fonctionne super bien :

Je défini avant derlig (dernière ligne remplie) et ReC 1, 2 3 4 (mot saisi dans un des texbox)

If UserCalcStat.TextBox252 <> "" Or UserCalcStat.TextBox253 <> "" Or _
UserCalcStat.TextBox254 <> "" Or UserCalcStat.TextBox252 <> "" Then
For Each Cel In Worksheets("Feuil1").Range("bn3:bn" & Derlig)
If Cel.Value Like ReC Or Cel.Value Like Rec2 Or Cel.Value Like Rec3 Or Cel.Value Like Rec4 Then
Cel.Offset(0, 60).Value = "A"
Else: Cel.Offset(0, 60).Value = ""
End If
If Cel.Value Like "*%*" Then Cel.Offset(0, 60).Value = ""
Next Cel

A plus
 

Discussions similaires

Réponses
7
Affichages
355
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…