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 :

requête de selection sur VBA?


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut requête de selection sur VBA?
    bonjour à tous

    je veux faire une requête sur une table à partir de deux critères et afficher le résultat qui est unique (cad une seule variable vérifie les deux conditions)
    je sais que je dois ecrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT monchamp FROM matale WHERE premièrecondition AND deuxième condition
    mais en pratique je sais pas comment procéder
    Pouvez m'aider SVP

    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    juste un détail, j'ai essayé de passer par l'instruction Dlookup, mais j'ai pas pu y inclure deux conditions à la fois

  3. #3
    Membre du Club Avatar de acorna
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 61
    Points : 41
    Points
    41
    Par défaut
    salut!

    Par un database.openrecordset(marequete) ça marche pas??
    L’une des « lois » de la conception de logiciels s’énonce : « si l’on ajoute des collaborateurs à un projet de logiciel ayant pris du retard, le retard ne peut que s’aggraver ».

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    en fait je maitrise pas bien les recordsets
    peut tu m'aider à le faire STP?

  5. #5
    Membre expérimenté
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Points : 1 664
    Points
    1 664
    Par défaut
    Citation Envoyé par jessy212
    bonjour à tous

    je veux faire une requête sur une table à partir de deux critères et afficher le résultat qui est unique (cad une seule variable vérifie les deux conditions)
    je sais que je dois ecrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT monchamp FROM matale WHERE premièrecondition AND deuxième condition
    mais en pratique je sais pas comment procéder
    Pouvez m'aider SVP

    (...)

    juste un détail, j'ai essayé de passer par l'instruction Dlookup, mais j'ai pas pu y inclure deux conditions à la fois
    merci

    Salut,

    Essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Variable = nz(DLookUp("[monchamp]","matable","premièrecondition AND deuxièmecondition"),"")
    La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici nous avons réuni théorie et pratique: Rien ne fonctionne ... et personne ne sait pourquoi!
    Albert Einstein

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    oui voila en fait j'ai essayé ce code
    [CODE]
    cours = Nz(DLookup("[cloture]", "hist_cours", "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     = " & sticodevam & " AND [seance]= #" & seance & "#"), "999")
    mais le probleme c'est que ca marche pour certaines valeurs mais pour d'autres ca donne des resultats completement faux

  7. #7
    Membre du Club Avatar de acorna
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 61
    Points : 41
    Points
    41
    Par défaut
    d'acc. D'abord vérifie que "Microsoft DAO Object Library" soit bien coché dans Références/Outils.

    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
     
    Dim rst As DAO.Recordset
    Dim Db As Database
    Dim s1 As String
    Dim s2 As String
    'tu dis que la base de travail est la base courante
    Set Db = CurrentDb
    Dim requete As String
    requete= "SELECT monchamp FROM matale WHERE premièrecondition AND deuxième condition"
    'là tu execute ta requete sur la base
    Set rst = Db.OpenRecordset(req)
    'Pour parcourir le jeu d'enregistrement obtenu par la requete
    'tu te place sur le primier enregistrement
    rst.MoveFirst
    'Tant qu'il y a encore des enregistrement
    While rst.EOF = False
    'tu mets dans une variable ton champ récupéré
        s1 = rst.Fields(0).Value
    'tu en fais le traitement qu etu veux
     
     
    'ettu passe à l'enregistrement suivant si il y a
    rst.MoveNext
    Wend
    L’une des « lois » de la conception de logiciels s’énonce : « si l’on ajoute des collaborateurs à un projet de logiciel ayant pris du retard, le retard ne peut que s’aggraver ».

  8. #8
    Membre expérimenté
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Points : 1 664
    Points
    1 664
    Par défaut
    Citation Envoyé par jessy212
    oui voila en fait j'ai essayé ce code
    [CODE]
    cours = Nz(DLookup("[cloture]", "hist_cours", "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     = " & sticodevam & " AND [seance]= #" & seance & "#"), "999")
    mais le probleme c'est que ca marche pour certaines valeurs mais pour d'autres ca donne des resultats completement faux
    C'est pas assez clair ton code, stp réécris le.
    Merci
    La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici nous avons réuni théorie et pratique: Rien ne fonctionne ... et personne ne sait pourquoi!
    Albert Einstein

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    ok voila, en fait ca coupe parceque j'ai le mot code dans mes instructions

    cours = Nz(DLookup("[cloture]", "hist_cours", "[code] = " & sticodevam & " AND [seance]= #" & seance & "#"), "999")

  10. #10
    Membre expérimenté
    Avatar de Mahefasoa
    Homme Profil pro
    Manager IT
    Inscrit en
    Octobre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Manager IT

    Informations forums :
    Inscription : Octobre 2003
    Messages : 835
    Points : 1 664
    Points
    1 664
    Par défaut
    Re,
    Le code me semble correcte.
    Quelques points à mettre au clair: 1. sticodevam est-il un texte ou numérique? 2. Il faut faire gaffe à la date lorsque tu mets entre dièse une variable car Access comprend les date au format Anglais plutôt que les format Français. Donc je te conseille de modifier le format de la date en ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ...#" & Format(Variable, "mm/dd/yyyy") & "#...
    Essaye et on verra la suite.
    Bon courage
    La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici nous avons réuni théorie et pratique: Rien ne fonctionne ... et personne ne sait pourquoi!
    Albert Einstein

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    en fait sticodevam est de type long
    attend je v essayé la modification du format de la date et on verra après
    merci

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 118
    Points : 65
    Points
    65
    Par défaut
    c'est ok mahefasoa
    apparemment c'etait ca le probleme
    merci bien

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

Discussions similaires

  1. [AC-2013] Problème requête ajout/select en VBA
    Par Defaultuser01 dans le forum VBA Access
    Réponses: 11
    Dernier message: 24/05/2014, 03h55
  2. Requête SQL select sur date
    Par delavega dans le forum ASP
    Réponses: 2
    Dernier message: 08/01/2012, 16h50
  3. Indice hors de selection sur VBA ?
    Par dexterchief dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 18/08/2011, 20h38
  4. Requête de selection sur table many to many
    Par doogy dans le forum Langage SQL
    Réponses: 3
    Dernier message: 04/05/2009, 19h44
  5. Ouvrire requête de selection en VBA ..
    Par snoopy69 dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 15h55

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