Trouver un mot dans une datagridview avec ou sans espace [Résolu]

germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 18 juin 2012 à 11:31 - Dernière réponse :  Utilisateur anonyme
- 22 juin 2012 à 18:29
Bonjour,
je veux rechercher un mot dans une datagridview en ignorant l'espace, je m'explique

j'ai un nom dans ma datagridview comme ça : EL BAZAR
alors je veux detecter ce nom soit que je cherche par EL BAZAR ou ELBAZAR.

je souhaite étais clair.

merci
Afficher la suite 

Votre réponse

24 réponses

Meilleure réponse
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juin 2012 à 17:21
1
Merci
mais la prochaine fois ne te mele pas dans des sujets que tu ne maitrise pas.

Celle-là, c'est de loin la meilleure des trois dernières années

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ

Merci ucfoutu 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de ucfoutu
Utilisateur anonyme - 18 juin 2012 à 18:08
0
Merci
Bonjour,

Devin ON

Le devin dit d'utiliser la méthode

DataView.Find()


ou la méthode

DataView.FindRows


Ou la méthode

DataTable.select


Ou de bâtir une instruction SQL qui recherche directement dans la table de données d'origine.

Ou de parcourir le DataGridView cellule par cellule avec au moins dex boucles imbriquées.

Le devin est en manque d'inspiration

Devin OFF
Commenter la réponse de Utilisateur anonyme
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 18 juin 2012 à 22:08
0
Merci
Ouais...
Bonjour à germany et un salut à marcotte,
Un autre devin se dit que doit bien exister, sous VB.Net, l'équivalent de l'opérateur Like de VB6.
(Like "EL*BAZAR repèrerait les deux)


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 21 juin 2012 à 11:19
0
Merci
Bonjour,

je vous remercie infiniment pour vos réponses, mais je suis toujours bloqué voilà le code de mon filtre :

Me.VersementBindingSource.Filter = "client like '" & Txtclient.Text & "*'"


Txtclient.Text est le champ dans je saisie ma recherche donc dans ce textbox soit je tape ELBAZAR ou EL BAZAR je doit trouver ma recherche.

merci.
Commenter la réponse de germany1970
cs_JMO 1855 Messages postés jeudi 23 mai 2002Date d'inscription 24 juin 2018 Dernière intervention - 21 juin 2012 à 14:15
0
Merci
 Bonjour le Forum

N'y a-t-il pas en .Net l'équivalent de


MyVar = "   EL    BAZAR   "
MsgBox """" & Replace(MyVar, Space(1), vbNullString) & """"



jean-marc
Commenter la réponse de cs_JMO
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 21 juin 2012 à 17:44
0
Merci
Bonjour,
je suis toujours dans l'attente de votre aide.
Commenter la réponse de germany1970
Utilisateur anonyme - 21 juin 2012 à 17:59
0
Merci
Bonjour,


je suis toujours dans l'attente de votre aide.


Comme si c'était une obligation de tout savoir et de donner la réponse à l'heure que tu veux.

Si tu essaies juste "bazar", cela donne quoi ?
Commenter la réponse de Utilisateur anonyme
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 21 juin 2012 à 18:38
0
Merci
Bonjour cmarcotte,

alors ma recherche se faite à partir d'un textbox, je donne plus d'éclaircissement:

alors le mot dans ma table est: EL BAZAR (avec espace entre EL et BAZAR)

dans ma textbox quand je tape EL BAZAR le résultat s'affiche correctement
mais quand je tape ELBAZAR (un message aucune résultat trouvé).


voilà.
Commenter la réponse de germany1970
Utilisateur anonyme - 21 juin 2012 à 18:51
0
Merci
Bonjour,

Justement, c'est le but de ma question. Si tu mets juste bazar comme recherche, est-ce que tu récupères les deux ?
Commenter la réponse de Utilisateur anonyme
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 21 juin 2012 à 18:59
0
Merci
Tu utilises tout simplement fort mal l'opérateur like !
Il est clair que "EL BAZAR" n'est pas Like "ELBAZAR*" , mais Like "EL*BAZAR"
Pour utiliser Like, il te faut donc d'abord utiliser Split ===>> un array toto ===>> de i = 0 to ubound(toto) ===>> titi = titi & toto(i) & "*"
et ton filtre doit utiliser titi.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 21 juin 2012 à 19:37
0
Merci
meme avec bazar aucun résultat, je doit saisir EL BAZAR pour obtenir le résultat si non toujours aucun résultat.

je rappel que le filtre se fait dans une datagridiew.

pour UCFOUTU je cherche pas exactement EL BAZAR, mais j'ai bcp d'enregistrements affichés dans ma datagridview et que EL BAZAR est seulement un exemple.
et ma recherche se faite avec un textbox donc votre proposition de "EL*BAZAR" je pense pas très utile pour mon cas.

Merci infiniment.
Commenter la réponse de germany1970
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 21 juin 2012 à 19:49
0
Merci
Tu n'as donc purement et simplement pas compris le sens de mon message. "EL BAZAR" n'était qu'un exemple et il aurait été valable pour toute chaîne (par exemple "dodo la saumure" !
J'en suis désolé. Et j'arrête là !


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 22 juin 2012 à 11:07
0
Merci
Bonjour UCFOUTU,

qu'est ce que j'ai pas compris, voilà le code de mon filtre:

Me.VersementBindingSource.Filter = "client like '" & Txtclient.Text & "*'"

alors client c'est le nom de la colonne où les noms à rechercher et le Txtclient.Text [color =blue] est mon textbox où je saisie ma recherche.
alors quelque soit le nom entré dans txtclient soit avec espace ou non il doit m'afficher le résultat.

voilà.
Commenter la réponse de germany1970
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juin 2012 à 11:35
0
Merci
Relis donc ma réponse de jeudi 21 juin 2012 à 18:59:03


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 22 juin 2012 à 11:42
0
Merci
j'ai pas bien compris votre approche c'est pour ça, si tu peux m'expliquer un peut plus clair ça sera un très grand service parce que je suis tout un petit ébutant.

tu es vraiment un des hommes de ce forum que nous pouvons compter sur lui, merci encore.
Commenter la réponse de germany1970
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juin 2012 à 13:30
0
Merci
Ok, mais moi, je ne suis pas VB.Nettiste et tu vas donc devoir faire l'effort de transcrire en VB.Net ce petit test (auto-explicite) que j'écris en VB6 :

Private Sub CommandButton1_Click()
  Dim a_chgercher As String, critere As String
  a_chercher = "EL BAZAR"
  critere = "ELBAZAR"
  If a_chercher Like transcritere(critere) Then MsgBox "oui" Else MsgBox "non"
  critere = "EL BAZAR"
  If a_chercher Like transcritere(critere) Then MsgBox "oui" Else MsgBox "non"
  a_chercher = "ELBAZAR"
  critere = "ELBAZAR"
  If a_chercher Like transcritere(critere) Then MsgBox "oui" Else MsgBox "non"
  critere = "EL BAZAR"
  If a_chercher Like transcritere(critere) Then MsgBox "oui" Else MsgBox "non"
  
End Sub

Private Function transcritere(quoi As String) As String
  quoi = Replace(quoi, " ", "")
  transcritere = Replace(StrConv(quoi, vbUnicode), Chr(0), "*")
End Function


où critere serait le contenu de ta textbox et où a_chercher serait le contenu du champ ===>> tu comprends ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 22 juin 2012 à 16:22
0
Merci
écoute ucfoutu on est pas sur la meme ligne, je t'avais dit que ma recherche n'est pâs exactement EL BAZAR je cherche n'importe quel mot dans la colonne de ma datagridview.

et je dois entré le nom dans ma textbox.

sur la base du texte saisie dans ma textbox le filtre s'exécute dans ma datagridview.
Commenter la réponse de germany1970
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 22 juin 2012 à 16:27
0
Merci
Pas sur la même ligne ?
Tout bien pensé : non, en effet. Tu es manifestement "ailleurs"
Mais moi, je suis sur la bonne
Allez ===>> bonne chance.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
germany1970 136 Messages postés mardi 4 mars 2008Date d'inscription 22 mars 2014 Dernière intervention - 22 juin 2012 à 16:58
0
Merci
bonnne chance à toi aussi, mais la prochaine fois ne te mele pas dans des sujets que tu ne maitrise pas.
Commenter la réponse de germany1970
Utilisateur anonyme - 22 juin 2012 à 17:39
0
Merci
Bonjour,

ucfoutu maîtrise très bien son sujet.

L'exemple qu'il t'a donné plus haut avec Split() consistait à prendre un mot avec une espace (N'importe quel mot avec une espace.) et de remplacer l'espace par l'astérisque. Une fois que cette opération est faite, tu peux bâtir ton critère avec el*bazar, de*hollande, de*Larochefoucauld etc.

Même qu'en VB.net, tu peux faire la même opération avec String.replace

dim nom as string
dim nouveaunom as string
nom = textbox1.text
if nom.contains(" ") then
     nouveaunom = nom.replace(" ","*")
end if
Commenter la réponse de Utilisateur anonyme

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.