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 :

Macro moyenne glissante [Toutes versions]


Sujet :

Macros Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2015
    Messages : 9
    Points : 8
    Points
    8
    Par défaut Macro moyenne glissante
    Bonjour,

    je cherche à faire une moyenne glissante sous access

    exemple

    Index Date valeur Moyenne mobile
    1 01/01/2014 5
    2 01/02/2014 10 7.5
    3 01/03/2014 15 12.5

    merci d'avance de vos retour

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Explique « moyenne glissante ».

    Il me semble que tu devrais spécifier comment elle glisse (par ex. la moyenne des x données précédentes).

    Donne un exemple concret avec le résultat que tu attends.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2015
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    je viens d'ajouter un fichier excel et ma base access

    J'effectue des relevés chaque jour sur une machine et je souhaiterais faire une moyenne mobile sur les 20 derniers relevés (enregistrement)

    J'espère que je suis plus clair
    Fichiers attachés Fichiers attachés

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Je ne suis pas équipé pour lire ta bdd : je suis resté à Access2000.

    D’abord, si à l’origine les données sont saisies dans Excel, c’est plus simple d’y faire le calcul dans la foulée et d’importer ensuite le résultat dans Access.

    En Access, voici une procédure qui fait le calcul.

    J’ai repris tes données dans la table LaTable




    N.B. J’ai gardé les données calculées par Excel à titre de contrôle.

    Code de la procédure
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    Option Compare Database
    Option Explicit
     
    Public Sub MoyMob()
    Dim t(20) As Double
    Dim i As Integer
    Dim rs As Recordset
    Dim dCalcul As Double
    'Réinitialiser la colonne
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE LaTable SET MoyMob = Null;"
    DoCmd.SetWarnings True
    Set rs = CurrentDb.OpenRecordset("LaTable")
    'Garnir t avec les 19 premiers (pas de moyenne mobile pour ceux-là)
    rs.MoveFirst
    For i = 1 To 19 '
      t(i) = rs("Releve")
      rs.Edit
      rs("MoyMob") = Null
      rs.Update
      rs.MoveNext
    Next i
    'Traitement des cas banals
    Do Until rs.EOF
      'Faire glisser chaque case du tableau vers la gauche
      For i = 0 To 19
        t(i) = t(i + 1)
      Next i
      'Accueillir la valeur du 20e suivant
      t(19) = rs("Releve")
      'Calculer la moyenne
      dCalcul = 0
      For i = 0 To 19
        dCalcul = dCalcul + t(i)
      Next i
      dCalcul = dCalcul / 20
      'Enregistrer le résultat
      rs.Edit
      rs("MoyMob") = dCalcul
      rs.Update
      'Au suivant
      rs.MoveNext
    Loop
    'Sortir
    rs.Close
    Set rs = Nothing
    End Sub

    Pour l’exécuter
    Tu ouvres la fenêtre d’exécution : <CTRL+G> et tu saisis « call MoyMob ».






    … et la table se complète :

    Fichiers attachés Fichiers attachés
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2015
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Merci pour ton analyse et ton explication

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

Discussions similaires

  1. Macro: Calculer moyenne glissante
    Par vadius dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/09/2010, 17h37
  2. [AC-2007] créer une moyenne glissante
    Par triaguae dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 28/04/2009, 12h54
  3. [OpenOffice][Tableur] macro "moyenne,minimun,ecart type" et fonction sous totaux
    Par karlakir dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 21/03/2009, 18h04
  4. Requete Moyenne Glissante
    Par richardprod dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 01/06/2008, 22h04
  5. Moyenne Glissante et moyenne 2ⁿ
    Par webinfo dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 04/04/2008, 13h45

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