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 :

sélectionner une ligne dans une zone de liste modifiable


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 134
    Points : 52
    Points
    52
    Par défaut sélectionner une ligne dans une zone de liste modifiable
    Bonjour!
    J'ai une zone de liste modifiable ("Lst_ETP") qui affiche ligne par ligne des données relatives à des rendez-vous : 1 ligne pour 1 rdv, et sur une même ligne on trouve plusieurs champs comme la date du rdv, le lieu, le sujet ...
    le problème est que cette liste est très longue, difficile de trouver rapidement la date des rendez-vous les plus proches de la date actuelle.
    Je souhaite donc créer un bouton qui va me sélectionner la ligne correspondant à la prochaine réunion. J'ai repéré cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Lst_ETP.selected(var) = true
    où var est le numéro de la ligne de Lst_ETP (0 -> n-1)
    Mon souci est que n'ai aucun moyen de faire le lien entre la date de la réunion et le numéro de la ligne correspondante dans Lst_ETP.
    Avez-vous une idée pour réaliser cette manip efficacement?
    j'ai pensé retourner la valeur d'une requête sql qui compte le nombre d'enregistrements entre la date maximale et la date actuelle, et attribuer cette valeur à la variable de l'expression. Mais c'est un peu bancal...
    Merci pour vos idées

  2. #2
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    ...cette liste est très longue, difficile de trouver rapidement la date des rendez-vous les plus proches de la date actuelle
    Je pense que ta ZdL est basée sur une requête........donc il suffit de trier sur "la date de rdv"....(déjà tu auras les plus récentes en premier...)..
    ..ensuite rien ne t'empêche à partir de cette même requête, de ne faire afficher que les X premières dates les plus proches de la date actuelle....
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 134
    Points : 52
    Points
    52
    Par défaut
    ok FreeAccess, merci pour ta réponse. En fait cette liste est déjà triée par date, mais c'est quand même pénible d'aller trouver la bonne (j'ai des rdv qui courent jusqu'à avril 2008). Je pourrais en effet changer la source de la ZDL, c'est une deuxième option, que je trouve moins pratique que la fonction selected en vba.

  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Je ne fais que répondre à ta question......
    ..trouver rapidement la date des rendez-vous les plus proches de la date actuelle
    ...c'est pourquoi je ne comprends pas ton problème...
    En fait cette liste est déjà triée par date, mais c'est quand même pénible d'aller trouver la bonne
    -1) Si ta ZdL est déjà triée, en quoi cela est-il pénible de sélectionner une date, puisque les plus prés de la date actuelle sont située en haut de liste..
    -2) Comme dit précédemment, tu peux ne faire afficher que les 5 ou 10 (selon ton choix..) dates les plus proches de la date actuelle.....(pour cela intéresse toi à SELECT TOP...)
    que je trouve moins pratique que la fonction selected en vba
    Je pense qu'ici tu te mélange un peu les pinceaux....
    Selected, ne te servira qu'a "sélectionner" un ou des éléments de ta ZdL déjà triée.....

    [EDIT] En y regardant de plus près, ici tu n'a même pas besoin de ZdL.
    Tu crée un simple formulaire en mode continu, basé sur une requête comme indiqué précédemment...ici, tu afficheras les 5 premiers RDV les plus près de la date actuelle)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT TOP 5 T_RDV.Date_RDV, T_RDV.Lieu
    FROM T_RDV
    ORDER BY T_RDV.Date_RDV;
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 134
    Points : 52
    Points
    52
    Par défaut
    Merci encore FreeAccess, j'aurais dû préciser un peu mieux ma demande avant de poster. Donc voici un screen du module de gestion des rdv :

    à gauche la ZDL avec les rdv, à droite le détail des rdv avec les participants. Un clic sur une ligne de la ZDL ouvre le formulaire des participants correspondant.
    Donc mon but est de sélectionner d'un simple clic la date du prochain rdv, et bien sûr d'afficher les participants à droite. Comme tu vois, la liste est longue, c'est écrit petit, et il y a bcp de rdv au-delà de la date actuelle -> je pensais qu'il était simple de sélectionner une ligne sur un critère tel qu'une column(x) de la ZDL. la méthode selected n'a comme critère de sélection que le numéro de ligne, ce qui est difficilement exploitable dans ce cas, à moins que...

Discussions similaires

  1. Réponses: 15
    Dernier message: 21/10/2009, 13h31
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [E-00] Syntaxe pour insérer une ligne ou une colonne dans une feuille
    Par Benjycool dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2009, 09h27
  4. [MySQL] inserer une ligne d'une table dans une autre table
    Par piero53 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 14/12/2008, 18h29
  5. Réponses: 3
    Dernier message: 29/01/2008, 12h08

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