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

Requêtes et SQL. Discussion :

extraire les 1ères lettres d'un champ [AC-2003]


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut extraire les 1ères lettres d'un champ
    Bonjour,

    J'ai un problème assez simple mais que je n'arrive pas à résoudre. J'ai une zone de texte qui m'affiche le champ d'une table. Je voudrais qu'il ne m'affiche que les 4 premières lettres de la valeur du champ. J'ai trouvé une fonction vba:
    mid("montexte", 1, 4) qui devrait marcher mais je sais pas m'en servir.

    J'ai fait une "procédure évènementielle" du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Private Sub Texte14_GotFocus()
        Texte14 = Mid(Table.Champ, 1, 4)
    End Sub
    Mais clairement, c'est archifaux. On peut pas mélanger du vba et du SQL. Du coup, je sais pas comment faire mieux...

    Merci de votre aide,

    Matthieu

  2. #2
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Il faut utiliser un objet DAO comme ici

    Ce qui te donne avec la fonction mid quelque chose comme cela.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub gauche_champ()
    dim textecoupe as string
    Dim Db As DAO.Database
    Dim Tb As DAO.TableDef
    Dim chp As DAO.Field
    Dim Pr As DAO.Property
    Set Db = CurrentDb
    Set Tb = Db.TableDefs("matable")
    For Each chp In Tb.Fields
    If chp.Name = "champ1" Then textecoupe = Mid(chp.Name, 1, 4)
    Next chp
    End Sub
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Merci de ton aide !
    Je ne connaissais pas les objets DAO.

    Bien cordialement,

    Matthieu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 20/04/2015, 21h24
  2. [MySQL] Extraire les lettres d’un champ
    Par Fujee dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/05/2010, 14h05
  3. N'extraire que les lettres d'un champs
    Par johweb dans le forum Requêtes
    Réponses: 1
    Dernier message: 09/04/2009, 19h45
  4. Tester les premières lettres d'un champs texte
    Par rorobase dans le forum VBA Access
    Réponses: 3
    Dernier message: 17/09/2008, 18h31
  5. Réponses: 3
    Dernier message: 08/10/2007, 16h05

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