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

Macros Access Discussion :

Mettre la somme d'un ensemble d'élément formater dans un controle


Sujet :

Macros Access

  1. #1
    Membre habitué Avatar de ecarbill
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : Service public

    Informations forums :
    Inscription : juin 2004
    Messages : 225
    Points : 146
    Points
    146
    Par défaut Mettre la somme d'un ensemble d'élément formater dans un controle
    Bonjour à tous
    J'ai un sous formulaire que j'alimente à l'aide d'une requête qui me ramène plusieurs lignes.
    En bas du sous formulaire, j'ai un contrôle dans lequel je souhaite mettre le total de la colonne "MONTANT_HT" grâce à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =RechDom("Sum([MONTANT_HT])";"[r_FACTURE_TEMP]")
    .

    Tout marche bien, lorsque j’écris ma requête sous forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT NUM, PIECE, QUANTITE, PRIX_UNITAIRE, QUANTITE*PRIX_UNITAIRE AS MONTANT_HT
    FROM FACTURE
    Mais lorsque je fais un formatage de la colonne MONTANT_HT, ca ne marche plus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT NUM, PIECE, QUANTITE, PRIX_UNITAIRE, Format([QUANTITE]*[PRIX_UNITAIRE],"# ###"" F CFA""") AS MONTANT_HT
    FROM FACTURE
    Dans ce cas, le sous formulaire est bien renseigné, formaté, mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =RechDom("Sum([MONTANT_HT])";"[r_FACTURE_TEMP]")
    me renvoie #Erreur.

    Comment puis-je obtenir le total, tout en conservant mon formatage SVP

    Merci infiniment
    Une somme de savoirs en chaque matière, si minime soit-elle, rend n'importe quel benêt, dans un pays de benêts, docte.

  2. #2
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    mai 2005
    Messages
    2 813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2005
    Messages : 2 813
    Points : 4 639
    Points
    4 639
    Par défaut
    Format([QUANTITE]*[PRIX_UNITAIRE],"# ###"" F CFA""") te renvoie un String avec du littéral

    or on ne peut sommer que des nombres : ajoute la colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     [QUANTITE]*[PRIX_UNITAIRE] as MONTANT_HT_brut
    à la requete r_FACTURE_TEMP
    sans doute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DSUM("[MONTANT_HT_brut]";"[r_FACTURE_TEMP]")
    "Always look at the bright side of life." Monty Python.

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    novembre 2004
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : novembre 2004
    Messages : 8 202
    Points : 13 831
    Points
    13 831
    Par défaut
    bonjour,
    il faut
    soit, formater le contrôle du sous-formulaire (onglet Format dans la feuille des propriétés) et pas le champ de la requête, car on ne peut pas faire une somme d'un champ formaté car il devient du texte,
    soit formater la source du contrôle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =format(RechDom("Sum([MONTANT_HT])";"[r_FACTURE_TEMP]");"# ###"" F CFA""")
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  4. #4
    Membre habitué Avatar de ecarbill
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : Service public

    Informations forums :
    Inscription : juin 2004
    Messages : 225
    Points : 146
    Points
    146
    Par défaut
    Bonjour à tous et merci pour vos contributions.
    Pour la proposition de micniv
    ajoute la colonne [QUANTITE]*[PRIX_UNITAIRE] as MONTANT_HT_brut
    , j'y ais pensé. Mais comme je l'ai expliqué, la requête alimente un formulaire. En ajoutant cette colonne, j'aurai dans mon formulaire l'information en double, à moins qu'il y ait moyen de mettre dans la requête et ne pas l'afficher dans le formulaire.

    Pour la proposition de tee_grandbois
    soit, formater le contrôle du sous-formulaire (onglet Format dans la feuille des propriétés) et pas le champ de la requête, car on ne peut pas faire une somme d'un champ formaté car il devient du texte,
    soit formater la source du contrôle:
    Le formatage du contrôle n'est pas un soucis, en fait le détail des informations s'affiche dans un formulaire (dont j'ai formaté la colonne MONTANT_HT), et ensuite, c'est comment faire la somme des éléments de cette colonne formatée ?

    J'ai pensé réécrire une nouvelle requête qui va calculer directement la somme dans la table de base, mais je me disait que çà faisait une requête de trop, qu'en pensez vous ?

    Bonne journée à vous
    Une somme de savoirs en chaque matière, si minime soit-elle, rend n'importe quel benêt, dans un pays de benêts, docte.

  5. #5
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    novembre 2004
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : novembre 2004
    Messages : 8 202
    Points : 13 831
    Points
    13 831
    Par défaut
    bonsoir,
    Le formatage du contrôle n'est pas un soucis, en fait le détail des informations s'affiche dans un formulaire (dont j'ai formaté la colonne MONTANT_HT), et ensuite, c'est comment faire la somme des éléments de cette colonne formatée ?
    si ma proposition n'est pas claire, dis-moi ce qui ne fonctionne pas:
    il faut
    soit, formater le contrôle du sous-formulaire (onglet Format dans la feuille des propriétés)
    quand on applique un format dans la propriété cela ne modifie pas le type de données, il s'agit, mais je ne l'ai pas précisé, du montant total
    soit formater la source du contrôle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =format(RechDom("Sum([MONTANT_HT])";"[r_FACTURE_TEMP]");"# ###"" F CFA""")
    il s'agit bien, là je l'ai indiqué, du formatage du montant total
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  6. #6
    Membre habitué Avatar de ecarbill
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : Service public

    Informations forums :
    Inscription : juin 2004
    Messages : 225
    Points : 146
    Points
    146
    Par défaut
    Bonjour à tous
    J'ai résolu le problème en calculant le total sur la table de base et non sur la requête.

    merci pour vos contributions
    Une somme de savoirs en chaque matière, si minime soit-elle, rend n'importe quel benêt, dans un pays de benêts, docte.

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/10/2010, 16h43
  2. mettre une animation flash par dessus un élément
    Par bart64 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 07/01/2009, 23h00
  3. Somme de l'ensemble des valeurs d'un tableau
    Par Merlin92 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 05/08/2008, 15h11
  4. Réponses: 2
    Dernier message: 25/04/2008, 07h49
  5. mettre un copyright sur l'ensemble de mes pages rapidemment?
    Par coco-la-bille dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/02/2006, 09h57

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