IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Selection de mots


Sujet :

Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut Selection de mots
    Bonjour,
    j'ai une table access avec des phrases dans une colone
    STREET_1 , et je voudrais savoir s'il existe une fonction
    qui me permettrai de tester chaque mot un par un

  2. #2
    Invité
    Invité(e)
    Par défaut Fonction SPLIT..


    [CODE]avarMotsClefs = Split(Nz(Me.STREET_1), " ")
    For Each varMotClef In avarMotsClefs
    ' Pour chaque mot, faire un test ICI
    Next[CODE]

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    Merci pour cette réponse

    pour les déclaration:

    avarMotsClefs est un tableau de string?
    et varMotClef un string?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Un simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim avarMotsClefs, varMotClef
    suffira

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    ok merci beaucoup je vais tester tout ça

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    J'ai un message d'erreur: Invalid use of Me keywords

    je ne sais pas à quoi sert Me

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Public Function Dechire(ByVal Adress As String)
     
    Dim avarMotsClefs, varMotClef
     
     
    avarMotsClefs = Split(Nz(Me.STREET_1), " ")
    For Each varMotClef In avarMotsClefs
    ' Pour chaque mot, faire un test ICI
     
    If (varMotClef = "R ") Then
    varMotClef = "Rue "
    ElseIf (varMotClef = "ALL ") Then
    varMotClef = "Allée "
    End If
     
    End Function

  7. #7
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    Bonjour,

    d'abord le mot Next est manquant de la boucle for each.
    tu as une fonction et tu n'affecte pas le résultat final au nom de la fonction
    Dechire = varmotcle

    A+

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    ok pour le next
    mais si je met Dechire = varmotclef
    il ne va rester qu'un mot dans l'enregistrement
    puisque varmotclef represente un mot de la phrase

    peut etre dois-je mettre Dechire = avarMotsClefs

  9. #9
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    Bonjour,

    j'ai mis comme exemple dechire = varmotcle, il faut mettre le résultat final dans le nom de la fonction.

    A+

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    Voila mon code
    j'ai toujours le message: "Invalid Use of Me Keywors"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    Public Function Dechire(ByVal Adress As String)
     
    Dim avarMotsClefs, varMotClef
     
     
    avarMotsClefs = Split(Nz(Me.Adress), " ")
    For Each varMotClef In avarMotsClefs
    ' Pour chaque mot, faire un test ICI
     
    If (varMotClef = "R ") Then
    varMotClef = "Rue "
    ElseIf (varMotClef = "ALL ") Then
    varMotClef = "Allée "
     
    End If
     
     
    Dechire = avarMotsClefs
    Next
     
    End Function

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    Déjà je vien de voir que la fonction Split n'exister pas dans access97
    donc je l'ai rajouter
    Peut etre que cela vient du fait que j'ai access 97 que "Me" ne marche pas?

  12. #12
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dechire = avarMotsClefs
    Next
    il faut toujours mettre l'affectation du résultat final au nom de la fonction avnt l'instruction End Function.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    next
    Dechire = avarMotsClefs
    End Function
    A+

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    Merci Soltani1 pour tes réponse mais j'ai tj le meme message
    d'erreur...
    En fait je ne comprend pas la syntaxe du Split
    et j'ai du mal à trouver des explications sur le "Me."

  14. #14
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    Bonjour,

    Me veut dire le formulaire courant.

    A+

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    ok c'est pour ça que sa marche pas
    parce que j'ai pas de formulaire
    en fait je vais lancer le code à partir d'une requete:
    "UPDATE Table1 SET STREET_1 = Dechire(STREET_1);"

    donc pa besoin de mettre Me?

  16. #16
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    Bonjour,

    Il faut toujours essayer pour voir si ca fonctionne ou pas, puis s'il y'a une erreur de voir le problème.

    A+

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    Bon, je crois que j'y suis presque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Public Function Dechire(ByVal Adress As String)
     
    Dim avarMotsClefs, varMotClef
     
     
    avarMotsClefs = Split((Adress), " ")
    For Each varMotClef In avarMotsClefs
    ' Pour chaque mot, faire un test ICI
     
    MsgBox varMotClef
    If (varMotClef = "R ") Then
    varMotClef = "Rue "
    ElseIf (varMotClef = "ALL ") Then
    varMotClef = "Allée "
    ElseIf ((varMotClef = "AV") Then
    varMotClef = "Avenue"
    End If
     
    Next
    Dechire = avarMotsClefs
     
     
    End Function
    Donc la fonction Split marche bien
    j'ai tester avec des MsgBox elle renvoi bien tout les mots
    donc le varMotClef est modifié
    mais par contre je pense que j'ai un probleme dans mon retour
    car sa renvoie le avarMotsClefs d'origine

  18. #18
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    bonjour,

    Donne moi un exemple de la fonction dechire (quel résultat tu veux renvoyer)

    A+

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 144
    Par défaut
    exemple:
    en entrée adress = AV DES ALL

    et je voudrais en sorti : Avenue DES Allée



    d'aprés mes test le varMotClef est modifié mais pas
    le avarMotsClefs

  20. #20
    Membre chevronné
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Par défaut
    bonjour,

    essaye ceci :
    resultat = ''
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    For Each varMotClef In avarMotsClefs
    ' Pour chaque mot, faire un test ICI
     
    If (varMotClef = "R ") Then
    resultat = resultat & "Rue "
    ElseIf (varMotClef = "ALL ") Then
    resultat = resultat & "Allée "
    ElseIf ((varMotClef = "AV") Then
    resultat = resultat & "Avenue "
    elseif
    resultat = resultat & " " & varmotclef
    End If
     
    Next
    Dechire = resultat
    A+

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. selection des mots similaires en textbox
    Par morched89 dans le forum C#
    Réponses: 10
    Dernier message: 23/11/2012, 16h43
  2. selection des mots similaires en textbox
    Par morched89 dans le forum C#
    Réponses: 7
    Dernier message: 23/11/2012, 10h19
  3. selection de mots précis
    Par moimemessssssssss dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 14/04/2008, 22h50
  4. requete de selection de mot
    Par Iria77 dans le forum Requêtes
    Réponses: 2
    Dernier message: 03/08/2007, 13h04
  5. Select par mot-clés ou 1er lettre
    Par maadadi dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/02/2004, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo