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 :

utilisation étiquette d'un formulaire dans une requête


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 90
    Points : 46
    Points
    46
    Par défaut utilisation étiquette d'un formulaire dans une requête
    Bonjour à tous,

    J'ai un grand nombre d'étiquettes dont le contenu est utilisé pour conditionner une même requête. (à chaque clic sur l'étiquette, c'est la légende de cette étiquette qui sert de conditionnement).
    Aurais-je un moyen simple d'utiliser la légende des étiquettes sur lesquelles on clique pour conditionner ma requête sans avoir à taper le nom exact de l'étiquette.
    Merci d'avance de votre retour.
    exemple :
    j'ai les trois étiquettes dont le libellé est : ETQ0100 - ETQ0102 - ETQ0201
    Ma requête lancée en cliquant sur l'étquette ETQ0100 doit lancer une requête dont un des champs est conditionné par la légende de cette étiquette (égal "ETQ0100"), par ETQ0102 en cliquant la seconde étiquette, etc...
    Cordialement
    Exemple
    étiquette 1 : IPC001
    étiquette 2 : IPC002
    étiquette 3 : IPC003
    en cliquant sur chacune de ces étiquettes je dois activer la même requête dont un des champs est conditionné par
    si champ1 = IPC001 lister le nom des produits de type IPC001
    si champ1 = IPC002 lister le nom des produits de type IPC002
    si champ1 = IPC003 lister le nom des produits de type IPC003
    Je voudrais pouvois créer une seule requête
    Merci de votre aide

  2. #2
    Membre expérimenté Avatar de stigma
    Homme Profil pro
    Créateur jeux vidéo
    Inscrit en
    Octobre 2003
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Créateur jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 113
    Points : 1 618
    Points
    1 618
    Par défaut
    Exemple :
    Set rst = db.OpenRecordset("SELECT * FROM Users " _
    & "WHERE User_Nom = " & Chr(34) & lbl_Nom.Caption & Chr(34) & "" _
    & "AND User_Prenom = " & Chr(34) & lbl_Prenom.Caption & Chr(34) & "")
    With rst

  3. #3
    Membre confirmé Avatar de timoth
    Homme Profil pro
    Responsable Outils Digitaux
    Inscrit en
    Octobre 2005
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Responsable Outils Digitaux

    Informations forums :
    Inscription : Octobre 2005
    Messages : 479
    Points : 474
    Points
    474
    Par défaut
    Bonjour,

    Essaye de nous donner un peu plus de details:
    - Qu'est-ce que tu veux dire par légende d'étiquette ? Je vois pas bien..
    - Quel genre de requete (etat, formulaire, update etc...). hesite pas a nous mettre un peu de code. On le comprend souvent mieux qu'une phrase en francais.

    Timoth
    puis et puis et encore . Sinon sans oublier et

  4. #4
    Membre régulier
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Octobre 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2005
    Messages : 93
    Points : 90
    Points
    90
    Par défaut Une petite idée...
    Boujour,

    Si je comprends bien il y a plein d'étiquettes et quand on clique dessus ça fait quelque chose de façon générique (la spécificité étant conditionnée par le nom de l'étiquette)...

    A mon sens tu devrais plutôt tester le "clic" sur ton formulaire. En cas de "clic" récupérer ce que est cliqué et faire alors toujours appel à la même fonction qui récupère le nom de l'objet "cliqué"...

    Un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Private Sub Form_Load()
    Dim ctl As Control
     
    For Each ctl In Me.Controls
        If ctl.ControlType = acTextBox Then
           ctl.Properties("onclick") = "=GotAClick('" & ctl.Name & "')"
        End If
    Next ctl
    Set ctl = Nothing
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Function GotAClick(ByVal NomCmd As String)
    FonctionRéalisée
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Public Function FonctionRéalisée
    NomEtiquette as String
     
    If Screen.ActiveControl.Tag <> #Règle de nommage des étiquettes à cliquer# Then
          Exit Function
    End If
    NomEtiquette = Screen.ActiveControl.Tag
     
    => Code pour lancer la requette avec NomEtiquette en paramètre
    End Function
    Enfin voilà moi ce que j'aurais fait...

    En espérant que celà t'aide

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Citation Envoyé par STOUPI
    Exemple
    étiquette 1 : IPC001
    étiquette 2 : IPC002
    étiquette 3 : IPC003
    en cliquant sur chacune de ces étiquettes je dois activer la même requête dont un des champs est conditionné par
    si champ1 = IPC001 lister le nom des produits de type IPC001
    si champ1 = IPC002 lister le nom des produits de type IPC002
    si champ1 = IPC003 lister le nom des produits de type IPC003
    Je voudrais pouvois créer une seule requête
    Merci de votre aide
    Je crois qu'il ya vraiment plus simple.

    Crées un champs que tu nomme comme tu veux (exemple ValeurCritere)

    Ta requête sera du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select Champ1, Champ2,... From TaTable Where TonChamp=forms!TonFormulaire!ValeurCritere
    Maintenant après chaque clic d'un étiquette tu fais (exemple)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub étiquette1_Clic()
           ValeurCritere=me.étiquette1.Caption
           me.Requery
    End Sub
    Cette même procédure sera faites sur chaque étiquette et en principe ca marchera sans problème.

    Voila.
    Amicalement

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

Discussions similaires

  1. Utilisation de SUBSTR avec WHERE dans une requête SQL
    Par thipyt dans le forum Requêtes
    Réponses: 4
    Dernier message: 27/10/2016, 15h54
  2. utilisation de la fonction Partdate() dans une requête
    Par jm6570 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 01/02/2010, 11h55
  3. Réponses: 2
    Dernier message: 27/03/2007, 17h47
  4. [SQL] Récupérer des variables de formulaire dans une requête SQL
    Par psychoBob dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 22/11/2005, 18h44
  5. Réponses: 5
    Dernier message: 19/10/2005, 14h56

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