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 :

Afficher le ratio du résultat de deux requêtes


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut Afficher le ratio du résultat de deux requêtes
    Bonjour,

    Dans un formulaire, deux list box (lst_total_previsionnel & lst_total_actuel) affichent le résultat de deux requêtes.
    Ce sont des nombres qui varient en fonction des éléments sélectionnés dans une combo box.

    J'aimerais afficher quelque part le ratio de ces deux nombres. J'ai pensé utiliser une text box et le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim numerateur As Variant
    Dim denominateur As Variant
    Dim Quotient As Variant
    numerateur = Me.lst_total_previsionnel.Value
    denominateur = Me.lst_total_actuel.Value
    Quotient = numerateur / denominateur
    Me.txt_ratio.Value = Quotient
    mais numerateur est "Null" tout comme denominateur.

    Merci beaucoup de votre aide!!!

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Salut,

    Pourquoi ne mets-tu pas un test "iif" pour savoir si l'un des champs est null, tu affiches null !!!
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    Non, ce que je veux dire c'est qu'un nombre s'ffiche bien dans mes list box: les requêtes fo,ctionnent correctement.

    Seulement avec le code que j'ai écrit, impossible de récupérer ces valeurs: on me renvoie "Null"

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Pourquoi ne travailles-tu pas directement avec les champs et pas avec des variables ???
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    peux-tu préciser?
    dans mon code j'ai
    lstbox1.Rowsource=SQL1 (avec un where magasin=magasin sélectionné dans combo box)
    et

    lstbox2.Rowsource=SQL2 (avec un where magasin=magasin sélectionné dans combo box)

    comment faire apparaître

    valeur lstbox1/ valeur lstBox2 dans un text box?

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Voilà ce que je ferai :
    Dans le champ "txt_ratio", je mettrais la formule suivant : "=lst_total_previsionnel / lst_total_actuel".

    Simplement, et tu fais une mise à jour à chaque fois que tu changes une valeur dans ta "combo_box"
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    Bonne idée mais cela ne marche pas: la text box reste vide.

    J'ai même uniquement essayé = lst_total_previsionnel ou bien =lst_total_previsionnel.Value mais cela ne marche pas...

  8. #8
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par decour
    Bonne idée mais cela ne marche pas: la text box reste vide.

    J'ai même uniquement essayé = lst_total_previsionnel ou bien =lst_total_previsionnel.Value mais cela ne marche pas...

    Tu devrais multiplier tes champs (ou valeurs) par 1, car je crois bien que les list_box prennent les valeurs en texte, et toi tu veux faire un calcul donc cela peut venir de là...
    Essaye pour voir.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    Ca ne marche pas super... J'ai essayé d'écrire =lst_total_previsionnel *1 dans le control source de ma texte box

  10. #10
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    As tu essayé de reprendre ton code du départ, et de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Dim numerateur As Variant 
    Dim denominateur As Variant 
    Dim Quotient As Variant 
    numerateur = Me.lst_total_previsionnel.Value * 1
    denominateur = Me.lst_total_actuel.Value * 1
    Quotient = numerateur / denominateur 
    Me.txt_ratio.Value = Quotient
    Et de voir si cela donne quelque chose ?
    Attention si tu n'as rien dans ce champs...
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    Malheureusement, cela ne donne rien.
    En faisant tourner le débogueur, je constate que

    numerateur = Me.lst_total_previsionnel.Value * 1
    denominateur = Me.lst_total_actuel.Value * 1
    sont Null.

    J'ai essayé avec ".Column" sans plus de résultats.

    Que veux tu dire avec "Attention si tu n'as rien dans ce champs..." ?

    D'autre part n'y a -t-il pas un pb avec le fait que la RowSource de ces list box soient une requête?

  12. #12
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Y-a-t-il des valeurs dans la "lst_total_previsionnel" et "lst_total_actuel", crée un bouton et avec la commande visualise la valeur (numérique ou texte) contenue, utilise la commande suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    msgbox forms!nom_formulaire!lst_total_previsionnel
    msgbox forms!nom_formulaire!lst_total_actuel
    Et vois les valeurs que tu recueilles !!!
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    aïe: j'obtiens un message d'erreur: "invalid use of Null"

  14. #14
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Donc reprenons depuis le début :

    Tu as dans ton formulaire des list_box, qui sont le résultat de deux requêtes !
    Tu cliques sur les lignes contenues dans les list_box, et ensuite cela doit te faire le calcul dans un champ.

    Ai-je bien compris !
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  15. #15
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 158
    Points : 163
    Points
    163
    Par défaut
    Salut,

    voilà ce que j'obtiens avec 2 combobox cmb1 et cmb2 en faisant le ratio dans un champ Texte.

    Il ne faut pas oublier le paramètre colonne pour extraire une donnée!

    j'ai écrit ceci dans le champ Texte:

    =Value(cmb2.Column(1))/Value(cmb1.Column(1))

    où le contenu de la colonne peut être au format Texte vu qu'il y a les Value

    J'espère t'avoir aidé

  16. #16
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Tu es sur que quelque chose est bien selectionné dans les listes ?

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    Merci pour toutes ces aides.
    Dans l'ordre:
    1) zoom: je ne veux pas avoir à cliquer sur mes listes: il faudrait que le résultat s'affiche tout seul

    2) le scandinave: ce n'est pas des combo mais des list box: est-ce que la propriété column s'utilise aussi? je vais essayer

    3) tofalu: effectivement, il est possible que ta réponse vienne me "casséééé" puisque je crois bien que rien n'est selectionné. Comment faire pour dire "le résultat que tu m'as donné, toi la requête, et bien je veux l'activer". Est-ce activate comma dans Excel?? J'essaye.

  18. #18
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Une zone de liste sert à afficher plusieurs enregistrement et le but est de donner le choix à l'utilisateur d'en sélectionner un ou plusieurs...

    Je ne comprend pas en fait ce que tu souhaites

    Tu peux donner un exemple de contenu de tes zones de listes ? Et le résultat final

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    J'ai utilisé des listes parce que je voulais placer ma requête dans la row source de la liste.

    1) En gros l'utilisateur choisis un magasin dans une combo box

    2) via un after update, je remplis
    a) la rowsource de ma liste1 avec une requete 1 qui donne "chiffre d'affaire réel du magasin" WHERE nom magasin = celui sélectionné dans la combo box
    b) la rowsource de ma liste2 avec une requete 2 qui donne "chiffre d'affaire prévisionnel du magasin" WHERE nom magasin = celui sélectionné dans la combo box

    3) je veux afficher réel/prévisionnel quelque part dans mon formulaire.

    Voilà, j'espère avoir été clair

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 103
    Points : 40
    Points
    40
    Par défaut
    En cliquant sur le résultat des listes, puis en re-cliquant sur le même magasin, j'obtient le ratio qui s'affiche bien.

    Comment éviter d'avoir à cliquer sur ces éléments? Comment les sélectionner? J'ai pensé à SetFcus mais cela ne fonctionne pas...

Discussions similaires

  1. [MsSql-2005] Fusionner le résultat de deux requêtes
    Par narutobaka dans le forum Développement
    Réponses: 3
    Dernier message: 25/03/2009, 16h46
  2. [QuickReport] Résultat de deux requêtes
    Par NABIL74 dans le forum QuickReport
    Réponses: 7
    Dernier message: 29/12/2008, 17h59
  3. [QR3 D7] Imprimer le résultat de deux requêtes
    Par Moine dans le forum Composants VCL
    Réponses: 2
    Dernier message: 09/05/2008, 16h26
  4. Comment afficher le rang des résultats d'une requête sous Access 2002
    Par painpepper dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 15/08/2007, 01h19
  5. Importer le résultat de deux requête dans un Excel
    Par alexandrebergercyr dans le forum VBA Access
    Réponses: 3
    Dernier message: 08/05/2007, 18h21

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