Faire defiler une courbe sur excel sans macros
Répondre à la discussion
Affichage des résultats 1 à 14 sur 14

Faire defiler une courbe sur excel sans macros



  1. #1
    Kondelec

    Faire defiler une courbe sur excel sans macros


    ------

    Bonjour à tous

    J'ai placé ma question dans "programmation" car il s'agit plus d'une problématique de logique et algorithmique.

    J'utilise souvent le calcul itératif sur excel pour faire des petites démos, par exemple expliquer l'influence d'un réglage de régulation sur une cuve qui reçoit du liquide, et qui se vide avec une pompe.
    Je fais des graphiques type "barres" pour bien visualiser les niveaux, mais j'aimerai ajouter une dimension "temporelle" pour visualiser comment le niveau évolue au fil du temps.
    J'ai essayé plusieurs astuces mais je n'arrive pas à trouver une méthode pour stocker mes valeurs dans un tableau, et les décaler d'un rang à chaque itération (pour garder par exemple les 100 valeurs précédentes).
    Est-ce que quelqu'un verrait comment faire ça ?

    -----

  2. #2
    Henrix

    Re : Faire defiler une courbe sur excel sans macros

    Bonjour,
    val() est un tableau contenant les valeurs.
    xx est la largeur d'affichage.
    nn est la longueur du tableau.
    n est l'index du tableau.
    Tant que: nn - n > 0
    Pour x = 1 to xx
    Afficher point val(n) en: x(+/-)offset),y(+/- offset)
    x suivant
    n=n+ 1 (ou + pas du déplacement)
    clair (effacer) affichage
    Suite tant que
    J'ai bon ?
    Dernière modification par Henrix ; 15/02/2024 à 10h37.

  3. #3
    umfred

    Re : Faire defiler une courbe sur excel sans macros

    La seule possible façon, sans macros, serait peut-être d'utiliser le principe de requête sur ton tableau de données (via le powerquery intégré à excel, selon ta version); onglet Données > à partir d'un tableau dans la zone Requête.
    Dans cette requête, il faudrait faire un filtre pour indiquer de prendre les x dernières valeurs (si un champ date, un filtre chronologique de type "les x jour/semaines/... précédent (c'est le filtre nommé "dans les précédents" en français et "in the previous" en anglais")
    Ensuite, tu fais ta courbe à partir des données filtrées et voilà.

  4. #4
    Kondelec

    Re : Faire defiler une courbe sur excel sans macros

    Merci pour vos réponses, ce n'est pas tout a fait ce que j'attendais (mon explication n'est probablement pas très claire), mais je vais explorer ces pistes

  5. A voir en vidéo sur Futura
  6. #5
    Henrix

    Re : Faire defiler une courbe sur excel sans macros

    Si tu donne un exemple de valeurs y f(x), je peux essayer de faire un truc dédié et générique (sous Windows).
    En ".zip" si c'est volumineux et en mp si c'est confidentiel.

  7. #6
    Kondelec

    Re : Faire defiler une courbe sur excel sans macros

    Merci pour cette proposition

    Pas de soucis, il n'y a rien de confidentiel. En fait le but est de faire des sortes de petits "automates" didactiques en exploitant les fonctions logiques, mais sans utiliser la moindre macro.

    Je viens de créer un exemple très simple :
    - On entre 1 dans la cellule C3 pour initialiser la feuille.
    - Lorsque l'on entre 0 les calculs commencent : La cellule horloge incrémente de 1 à chaque itération, la cellule C8 incrémente de la valeur notée en C7. Lorsque la valeur absolue de la cellule C8 atteint la limite que l'on a fixé la cellule "sens de variation" est multipliée par -1

    Dans cet exemple on va donc générer un signal type "dents de scie" qui varie indéfiniment de -5 à +5.
    Maintenant ce que j'aimerai faire ce serait tracer la courbe de ce signal au fur et à mesure qu'il se calcule, l’idéal serait de garder par exemple les 50 dernières valeurs.
    Je suis persuadé qu'on peut le faire avec des fonctions logiques mais je n'ai pas encore trouvé l'astuce.

    exemple cycle iteratif.xlsx

  8. #7
    umfred

    Re : Faire defiler une courbe sur excel sans macros

    ça ne marche pas chez moi, une jolie erreur de référence circulaire (normale, vu les formules)

  9. #8
    Kondelec

    Re : Faire defiler une courbe sur excel sans macros

    C'est logique qu'il y ai une référence circulaire, vu qu'il s'agit d'utiliser Excel en mode itératif...
    Pour l'activer il faut aller dans fichier/options/formules. Il faut cocher "activer le calcul itératif" et définir une seule itération.
    A chaque fois que l'on presse F9 une nouvelle itération est calculée.

  10. #9
    umfred

    Re : Faire defiler une courbe sur excel sans macros

    Ok pour ça.

    Mais pour la courbe, il me semble qu'il faille obligatoirement un tableau des données à visualiser.
    donc peut-être trouver une formule pour remplir une table en récupérant les calculs itératifs

  11. #10
    Kondelec

    Re : Faire defiler une courbe sur excel sans macros

    Je pensais faire une sorte de fonction bascule ou registre à décalage: On prend le résultat direct en rang 1, puis à chaque itération on le déplace d'un rang, en utilisant des fonctions natives de Excel.
    Intuitivement je pense que c'est possible, mais pour le moment je n'ai pas trouvé l'astuce...

  12. #11
    umfred

    Re : Faire defiler une courbe sur excel sans macros

    a priori la formule suivante devrait fonctionner, mais j'ai une sorte de bug dans les calculs (formule en H1 et suivante H2, H3,....)
    Code:
    =SI($C$3=0;SI(CELLULE("ligne";H1)=$C$4;$C$8;H1);0)
    Pour la répétition, il faudra rajouter un modulo peut-être

  13. #12
    Stan_94

    Re : Faire defiler une courbe sur excel sans macros

    Bonjour,
    voilà un petit problème qui mérite réflexion... interessant pour moi...

    Je partirais sur un tableau qui se rempli à chaque tour d'horloge (= appui sur F9). Je tâche d'y regarder de plus près dés que possible

  14. #13
    Stan_94

    Re : Faire defiler une courbe sur excel sans macros

    en repartant de l'idée d'umfred pour la formule et en adaptant au remplissage d'un tableau, on a une courbe (histogramme pour mon test) qui progresse à chaque itération. Voir le fichier exemple.

    C'est bien un "truc" comme ça qu'il faut ?

    exemple cycle iteratif.xlsx
    Dernière modification par Stan_94 ; 20/02/2024 à 12h28. Motif: orthographe

  15. #14
    Kondelec

    Re : Faire defiler une courbe sur excel sans macros

    Merci pour ces idées, je vais étudier ça.
    De mon coté je faisais déjà quelque chose de similaire (sans défilement et avec recherchev) mais j'ai l'impression que bien utilisé ça me donne plus de possibilité.

Discussions similaires

  1. Urgent, réalisation tableau Excel + macros
    Par invite7ec158d1 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 28/02/2012, 15h21
  2. Macros sous Excel...Aide SVP!!
    Par chminds dans le forum Logiciel - Software - Open Source
    Réponses: 14
    Dernier message: 22/05/2009, 20h38
  3. MATLAB Comment faire défiler des images?
    Par invite9f24019a dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 09/05/2008, 12h31
  4. Mes macros Excel ne passent plus d'un XP à l'autre
    Par inviteb0e19553 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 05/06/2006, 17h20
  5. Excel : Faire une courbe en pointillé
    Par Fajan dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 29/04/2006, 11h45