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 :

Moyenne sur série chronologique selon une règle


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Moyenne sur série chronologique selon une règle
    Bonjour,

    Novice sur Access, je voudrais créer une règle pour traiter une base de données.
    La règle est la suivante :
    nous avons une série chronologique avec des valeurs de ventes en colonnes.
    je veux lisser (calculer une moyenne sur) les valeurs dès lors que l'on a la situation suivante (80 - 100 - 80) ou (100 - 80 - 100) ....
    Ne connaissant pas VBA du tout, je n'arrive pas à traiter ces situations car access traite toutes les situations sans tenir compte des valeurs qu'il a déjà lisser en amont.
    Par exemple (fichier joint) : si on a cette situation :

    Date/ valeur/ correction règle/ formules
    1/ 110/ 103/ MOYENNE(A4:A6)
    2/ 90/ 103/ MOYENNE(A4:A6)
    3/ 110/ 103/ MOYENNE(A4:A6)
    4/ 90/ 93/ MOYENNE(A7:A9)
    5/ 100/ 93/ MOYENNE(A7:A9)
    6/ 90/ 93/ MOYENNE(A7:A9)
    7/ 100/ 103/ MOYENNE(A10:A12)
    8/ 110/ 103/ MOYENNE(A10:A12)
    9/ 100/ 103/ MOYENNE(A10:A12)

    au lieu de calculer comme il faut comme dans la colonne "correction règle", access va traiter les groupes de dates 1.2.3 puis 2.3.4 puis 4.5.6 puis 5.6.7 puis 7.8.9

    Il faut qu'access arrive a :
    1. identifier l'ensemble des périodes ou on trouve cette situation et identifier les périodes qui se recoupe afin de toujours traiter les cas dans l'ordre chronologique et ne plus traiter les cas où la date aurait dèjà été traité.
    2. lisser ces périodes selon la règle ci-dessus.

    Merci de votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello et bienvenue sur le forum
    je viens de regarder ton pb et je ne comprends pas trop les règles:
    - sur quel ensemble de données veut tu faire porter tes moyennes (en gros comment veut tu lisser?)
    - j'ai pas bien saisi ce que tu appelles condition 80 - 100 - 80
    - et aussi pourquoi as tu des formules excel?

    a bientot

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Simplifi Voir le message
    hello et bienvenue sur le forum
    je viens de regarder ton pb et je ne comprends pas trop les règles:
    - sur quel ensemble de données veut tu faire porter tes moyennes (en gros comment veut tu lisser?)
    - j'ai pas bien saisi ce que tu appelles condition 80 - 100 - 80
    - et aussi pourquoi as tu des formules excel?

    a bientot
    Bonjour,

    En fait je voudrais mettre à jour les valeurs de ventes en fonction de la règle :

    Ex :
    1) En partant de date1, si j'ai une valeur de ventes à date3 (date1 +2jours) identique à date1, je lisse les valeurs des date1, date2 et date3, sinon je lui laisse sa valeur d’origine.
    2) Ensuite je passe à date2, je m'assure que la valeur de date2 n'est pas déjà lissée avec celles de date1 et date3 dans l'occurrence précédente si non, alors je lisse date2, date3 et date4, si date2 est déjà lissée avec date1 et date3 je lui donne la valeur de lissage entre date1, date2 et date3, si non plus alors je lui laisse sa valeur d’origine.
    3) Ensuite je passe à date3, je m'assure que date3 n'est pas déjà lissée avec date1 et date2 ou date2 et date4 dans les 2 occurrences précédentes si non, alors je lisse date3, date4 et date5, si date3 est déjà lissée avec date1 et date2 ou date2 et date4 on lui donne la valeur de lissage correspondante (entre date1 et date2 ou entre date2 et date4), si non plus alors je luis laisse sa valeur d’origine..
    4)…..


    J'ai mis les formules excel juste pour montrer le résultat que je voudrai avoir de manière automatique.

    Merci.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello
    NB1 évite le bouton citation, utilise plutôt : ajouter une réponse

    ensuite, bien que tes règles de lissage restent un peu floues, je ne vois pas la solution en dehors de VBA
    - soit en ouvrant un formulaire sur cette table, en utilisant les docmd.gotorecord
    - soit en aveugle avec la technique des recordset (risque d'être hard pour le premier jour)

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Mars 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Je ne connais pas VBA mais s'il n' y a que vba pour résoudre mon problème, je suis preneur d'un code (ou une base de code) qui permet d'obtenir ce résultat.

Discussions similaires

  1. Réponses: 0
    Dernier message: 22/05/2014, 22h31
  2. Moyenne sur N valeurs d'une time serie
    Par Invité dans le forum R
    Réponses: 3
    Dernier message: 14/11/2010, 03h44
  3. Réponses: 16
    Dernier message: 15/08/2008, 11h08

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