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

VBA Access Discussion :

Comment placer par code le focus sur une donnée précise dans une zone de liste ? [AC-2013]


Sujet :

VBA Access

  1. #1
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut Comment placer par code le focus sur une donnée précise dans une zone de liste ?
    Salut membres du forum !
    Comment pourrais-t-on placer par code, le focus sur une donnée précise dans une zone de liste
    lorsqu'une zone de texte renseignée reçoit le curseur (la souris); je voudrais dire chaque fois que
    la zone de texte affiche une information, cette même information est sélectionnée dans la zone de liste.
    Nom : CaptureFocus_Curseur.PNG
Affichages : 267
Taille : 78,1 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Liste_Type_Travaux_Materiaux_AfterUpdate()
        ' Rechercher l'enregistrement correspondant au contrôle.
        Dim rs As Object
        Set rs = Me.Recordset.Clone
        rs.FindFirst "[Num_Type_TravMat] = " & Str(Nz(Me![Liste_Type_Travaux_Materiaux], 0))
        If Not rs.EOF Then Me.Bookmark = rs.Bookmark
     
    End Sub
    Cordialement
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonjour,

    Les zones de listes fonctionnent de manière séquentielle.

    Il faut parcourir le contenu jusqu'à trouvé l'élément et faire la sélection.

    Tu as cet article :

    http://blogaccess.free.fr/?p=118

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Salut membres du forum !
    J'ai eu satisfaction à partir du lien http://blogaccess.free.fr/?p=118 que vous m'avez indiqué.
    Merci infiniment.
    Cependant, j'ai créé trois formulaires: l'un avec une zone de texte pour la recherche "FrmTblArticles_1", le deuxième une zone de liste déroulante "FrmTblArticles" et troisième avec une zone de texte pour la recherche "TblArticles". Concernant le formulaire "FrmTblArticles_1" contenant la zone de texte pour la recherche; le code:
    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
    Dim i As Long
    Dim i_save As Long
     
    Me.Liste_Articles.Selected(0) = True     'désélection de la liste multiple
     
    For i = 1 To Me.Liste_Articles.ListCount - 1  'parcours la liste multiple
        Me.Liste_Articles.Selected(i) = False
            'déselection de l'élement courant
        If (Me.Liste_Articles.ItemData(i) = CStr(Nz(Me.RechercheDansListe_Articles, ""))) Then
           's'il est identique à ce que je cherche
           i_save = i  'je repère la ligne
        End If
    Next
    Me.Liste_Articles.Selected(i_save) = True
    'en sortant je sélectionne la liste
    la recherche ne marche.
    Pièces jointes:
    Voici la structure de la table:Nom : CaptureRecherche.PNG
Affichages : 217
Taille : 23,2 Ko
    Copie de la BD.

    Cordialement.
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  4. #4
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Salut membres du forum!
    Voici ce que j'ai pu réalisé grâce à vos interventions:
    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
    25
    26
    Private Sub Liste_Articles_AfterUpdate()
        ' Rechercher l'enregistrement correspondant au contrôle.
        Dim rs As Object
        Set rs = Me.Recordset.Clone
        rs.FindFirst "[ID_Article]=" & Str(Nz(Me![Liste_Articles], 0))
        If Not rs.EOF Then Me.Bookmark = rs.Bookmark
    End Sub
     
    Private Sub RechercheDansListe_Articles_AfterUpdate()
    Dim i As Long
    Dim i_save As Long
     
    Me.Liste_Articles.Selected(0) = True     'désélection de la liste multiple
     
    For i = 1 To Me.Liste_Articles.ListCount - 1  'parcours la liste multiple
        Me.Liste_Articles.Selected(i) = False
            'déselection de l'élement courant
        If (Me.Liste_Articles.ItemData(i) = CStr(Nz(Me.RechercheDansListe_Articles, ""))) Then
           's'il est identique à ce que je cherche
           i_save = i  'je repère la ligne
        End If
    Next
    Me.Liste_Articles.Selected(i_save) = True
    'en sortant je sélectionne la liste
     
    End Sub
    Nom : CaptureZoneTexteZoneListe.PNG
Affichages : 180
Taille : 30,6 Ko

    Merci infiniment.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/08/2017, 00h07
  2. Réponses: 3
    Dernier message: 30/11/2011, 10h09
  3. Réponses: 3
    Dernier message: 07/04/2011, 14h38
  4. Réponses: 6
    Dernier message: 13/11/2009, 16h06
  5. Réponses: 0
    Dernier message: 07/06/2009, 12h31

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