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

Formules Discussion :

Moyenne d'un champ calculé


Sujet :

Formules

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Moyenne d'un champ calculé
    Bonjour à tous et merci de votre aide rapide.
    Dans une de mes tables j'ai des dates de naissance des enfants.
    Pour afficher leur âge j'ai la formule suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if isnull ({ENFANT.EN_NAIS})=true then
    "-"
    else
    totext (datediff ("yyyy", {ENFANT.EN_NAIS}, currentdate), 0)
    je veux pouvoir ensuite calculer la moyenne de tous les ages via un champ de total cumulé mais ce champ n'est pas reconnu comme un champ numérique.

    J'ai tout essayé par l'éditeur de formule sans succès.
    La seule solution trouvée a été de calculer en premier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    currentdate - {ENFANT.EN_NAIS}
    Puis d'effectuer une moyenne sur cette formule et enfin de la multiplier par 365 pour avoir la valeur en année.

    Cette solution ne me satisfait pas.
    Avez vous une solution plus simple?

  2. #2
    Modérateur
    Avatar de luc_chivas
    Profil pro
    Consultant BO/Crystal Reports
    Inscrit en
    Avril 2004
    Messages
    1 941
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant BO/Crystal Reports

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 941
    Points : 2 719
    Points
    2 719
    Par défaut
    Citation Envoyé par Bragon35 Voir le message
    Bonjour à tous et merci de votre aide rapide.
    Dans une de mes tables j'ai des dates de naissance des enfants.
    Pour afficher leur âge j'ai la formule suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if isnull ({ENFANT.EN_NAIS})=true then
    "-"
    else
    totext (datediff ("yyyy", {ENFANT.EN_NAIS}, currentdate), 0)
    je veux pouvoir ensuite calculer la moyenne de tous les ages via un champ de total cumulé mais ce champ n'est pas reconnu comme un champ numérique.

    J'ai tout essayé par l'éditeur de formule sans succès.
    La seule solution trouvée a été de calculer en premier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    currentdate - {ENFANT.EN_NAIS}
    Puis d'effectuer une moyenne sur cette formule et enfin de la multiplier par 365 pour avoir la valeur en année.

    Cette solution ne me satisfait pas.
    Avez vous une solution plus simple?

    tu rebascules le resultat de ta formule en Numérique et tu fais ta moyenne..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Else
    Dif_String:=totext (datediff ("yyyy", {ENFANT.EN_NAIS}, currentdate), 0)";
    Dif_Num:=Val(Dif_String)
    Luc

    Disponible - Intervention sur demande tout pays, toutes régions
    Formateur Crystal Reports (toutes versions)
    Contrat de support possible
    N'hésitez pas.... http://paypal.me/lucrascar

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    J'ai modifié la formule avec ton conseil mais l'utilisation de Dif_String avec cette syntaxe renvoi un message d'erreur.
    Peux tu préciser?
    D'avance merci et déjà merci pour ce début de réponse.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    IF isnull ({ENFANT.EN_NAIS})=true then
    "-"
    Dif_String:=totext (datediff ("yyyy", {ENFANT.EN_NAIS}, currentdate), 0)";
    Dif_Num:=Val(Dif_String)

  4. #4
    Modérateur
    Avatar de luc_chivas
    Profil pro
    Consultant BO/Crystal Reports
    Inscrit en
    Avril 2004
    Messages
    1 941
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant BO/Crystal Reports

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 941
    Points : 2 719
    Points
    2 719
    Par défaut
    Citation Envoyé par Bragon35 Voir le message
    J'ai modifié la formule avec ton conseil mais l'utilisation de Dif_String avec cette syntaxe renvoi un message d'erreur.
    Peux tu préciser?
    D'avance merci et déjà merci pour ce début de réponse.

    IF isnull ({ENFANT.EN_NAIS})=true then
    "-"
    Dif_String:=totext (datediff ("yyyy", {ENFANT.EN_NAIS}, currentdate), 0)";
    Dif_Num:=Val(Dif_String)
    As tu déclaré ta variable.. au début de la formule
    ou à la volée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Numvar Dif_Num:=Val(Dif_String)
    Luc

    Disponible - Intervention sur demande tout pays, toutes régions
    Formateur Crystal Reports (toutes versions)
    Contrat de support possible
    N'hésitez pas.... http://paypal.me/lucrascar

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Déclaration de variable
    Re et merci de ta présence,


    On touche à un domaine que je ne maitrise pas.
    Comment déclarer cette variable?

    Dans la formule de calcul de l'âge en tout début avec Numbervar Dif_Num? Si oui j'ai toujours le même message d'erreur me demandant de saisir un nombre, une valeur monétaire, etc...

Discussions similaires

  1. [XL-2010] TCD Champs calculé moyenne
    Par lucazzo dans le forum Excel
    Réponses: 4
    Dernier message: 17/10/2012, 16h06
  2. Calcul Moyenne groupée par champ
    Par AJ_ing dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 02/07/2012, 17h58
  3. Calcul moyenne d'un champ par semaine
    Par kedmard dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 16/01/2012, 06h57
  4. [MySQL] calculer la moyenne d'un champ
    Par jackbauer33 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 11/06/2008, 00h33
  5. Calcul de moyenne sur des champs Date
    Par schwinny dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 28/05/2008, 12h57

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