Sous VBA j'ai un petit souci concernant une recherche de=20
caractere dans une cellule. En clair je voudrais savoir si=20
la chaine (exemple) MAR est pr=E9sente dans une cellue=20
quelque soit sa position !!!
Exemple :
Cellule : "Monsieur DUMARSOUIN" doit etre reper=E9e
Bonjour, Regarde du côté de l'opérateur Like If Chaîne Like "*MAR*" en fin, de mémoire, l'exemple... A+
-----Message d'origine----- Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si
la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
.
papou
Bonjour Michelle Par exemple : Sub test() Dim CarCherche As String, JeCherche As Range CarCherche = "MAR" With Sheets("Feuil1").Cells Set JeCherche = .Find(CarCherche) If Not JeCherche Is Nothing Then MsgBox CarCherche & " a été trouvé dans la feuille Feuil1 au moins sur la cellule " & JeCherche.Address Else: MsgBox CarCherche & " n'a pas été trouvé dans la feuille Feuil1" End If End With End Sub
Cordialement Pascal
"Michelle" a écrit dans le message de news:1197f01c3f60d$2c157f80$ Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
Bonjour Michelle
Par exemple :
Sub test()
Dim CarCherche As String, JeCherche As Range
CarCherche = "MAR"
With Sheets("Feuil1").Cells
Set JeCherche = .Find(CarCherche)
If Not JeCherche Is Nothing Then
MsgBox CarCherche & " a été trouvé dans la feuille Feuil1 au
moins sur la cellule " & JeCherche.Address
Else: MsgBox CarCherche & " n'a pas été trouvé dans la
feuille Feuil1"
End If
End With
End Sub
Cordialement
Pascal
"Michelle" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:1197f01c3f60d$2c157f80$a101280a@phx.gbl...
Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de
caractere dans une cellule. En clair je voudrais savoir si
la chaine (exemple) MAR est présente dans une cellue
quelque soit sa position !!!
Exemple :
Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Bonjour Michelle Par exemple : Sub test() Dim CarCherche As String, JeCherche As Range CarCherche = "MAR" With Sheets("Feuil1").Cells Set JeCherche = .Find(CarCherche) If Not JeCherche Is Nothing Then MsgBox CarCherche & " a été trouvé dans la feuille Feuil1 au moins sur la cellule " & JeCherche.Address Else: MsgBox CarCherche & " n'a pas été trouvé dans la feuille Feuil1" End If End With End Sub
Cordialement Pascal
"Michelle" a écrit dans le message de news:1197f01c3f60d$2c157f80$ Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
michdenis
Bonjour Michelle,
Cette façon de faire est insensible à la casse des caractères lors de la comparaison '----------------------------------- Sub LaChaine()
Dim Mot As String, Chaine As String Chaine = Range("A1") Mot = "MAR"
If InStr(1, Chaine, Mot, vbTextCompare) > 0 Then MsgBox "oui" Else MsgBox "non" End If
End Sub '-----------------------------------
L'utilisation de l'opérateur "Like" est sensible à la casse comme le suggère Vincent.
If "DUMARSOUIN" like "*MAR*" then Msgbox "Ok" end if
Salutations!
"Michelle" a écrit dans le message de news:1197f01c3f60d$2c157f80$ Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
Bonjour Michelle,
Cette façon de faire est insensible à la casse des caractères lors de la comparaison
'-----------------------------------
Sub LaChaine()
Dim Mot As String, Chaine As String
Chaine = Range("A1")
Mot = "MAR"
If InStr(1, Chaine, Mot, vbTextCompare) > 0 Then
MsgBox "oui"
Else
MsgBox "non"
End If
End Sub
'-----------------------------------
L'utilisation de l'opérateur "Like" est sensible à la casse comme le suggère Vincent.
If "DUMARSOUIN" like "*MAR*" then
Msgbox "Ok"
end if
Salutations!
"Michelle" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:1197f01c3f60d$2c157f80$a101280a@phx.gbl...
Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de
caractere dans une cellule. En clair je voudrais savoir si
la chaine (exemple) MAR est présente dans une cellue
quelque soit sa position !!!
Exemple :
Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Cette façon de faire est insensible à la casse des caractères lors de la comparaison '----------------------------------- Sub LaChaine()
Dim Mot As String, Chaine As String Chaine = Range("A1") Mot = "MAR"
If InStr(1, Chaine, Mot, vbTextCompare) > 0 Then MsgBox "oui" Else MsgBox "non" End If
End Sub '-----------------------------------
L'utilisation de l'opérateur "Like" est sensible à la casse comme le suggère Vincent.
If "DUMARSOUIN" like "*MAR*" then Msgbox "Ok" end if
Salutations!
"Michelle" a écrit dans le message de news:1197f01c3f60d$2c157f80$ Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
Frédéric Sigonneau
Bonsoir,
Une autre approche (nécessite Excel 2000 ou + récent) avec une fonction personnalisée :
Function IsDedans(S, Chaine, Optional Sensible = False) If Not Sensible Then S = LCase(S): Chaine = LCase(Chaine) End If IsDedans = UBound(Split(S, Chaine)) > 0 End Function 'fs
Le dernier paramètre détermine si le résultat dépend de la casse (faux par défaut). Tu peux utiliser cette fonction dans une feuille de calcul :
=IsDedans(A1;"mar")
ou dans du code VBA :
Sub test() MsgBox IsDedans(Range("A1").Value, "Mar") End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Merci
Bonsoir,
Une autre approche (nécessite Excel 2000 ou + récent) avec une fonction
personnalisée :
Function IsDedans(S, Chaine, Optional Sensible = False)
If Not Sensible Then
S = LCase(S): Chaine = LCase(Chaine)
End If
IsDedans = UBound(Split(S, Chaine)) > 0
End Function 'fs
Le dernier paramètre détermine si le résultat dépend de la casse (faux par
défaut).
Tu peux utiliser cette fonction dans une feuille de calcul :
=IsDedans(A1;"mar")
ou dans du code VBA :
Sub test()
MsgBox IsDedans(Range("A1").Value, "Mar")
End Sub
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de
caractere dans une cellule. En clair je voudrais savoir si
la chaine (exemple) MAR est présente dans une cellue
quelque soit sa position !!!
Exemple :
Cellule : "Monsieur DUMARSOUIN" doit etre reperée
Une autre approche (nécessite Excel 2000 ou + récent) avec une fonction personnalisée :
Function IsDedans(S, Chaine, Optional Sensible = False) If Not Sensible Then S = LCase(S): Chaine = LCase(Chaine) End If IsDedans = UBound(Split(S, Chaine)) > 0 End Function 'fs
Le dernier paramètre détermine si le résultat dépend de la casse (faux par défaut). Tu peux utiliser cette fonction dans une feuille de calcul :
=IsDedans(A1;"mar")
ou dans du code VBA :
Sub test() MsgBox IsDedans(Range("A1").Value, "Mar") End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bjr a tous et toutes,
Sous VBA j'ai un petit souci concernant une recherche de caractere dans une cellule. En clair je voudrais savoir si la chaine (exemple) MAR est présente dans une cellue quelque soit sa position !!! Exemple : Cellule : "Monsieur DUMARSOUIN" doit etre reperée