Vba excel données en mémoire dans calcul

Résolu
bonjour à tous

j'ai une macro bien particulière à réaliser et la vraiment je nage même si ce n'est pas la "première fois" que j'utilise vba pour excel

j'explique mon cas par un exemple qui ne fait pas parti de mes données mais qui sera compréhensible

imaginé le fonctionnement d'une lumière

à chaque fois que vous appuyez sur le bouton pour l'allumer ou l'éteindre vous récupérez l'info de l'heure de l'action à la seconde prés où vous l'avez fait, suivi de l'état

cad : 08:11:59 ON ou 08:32:46 OFF (par exemple) et ceux toutes la journée en sachant que l'heure et dans une colonne et l'état dans une autre

je souhaiterai récupéré sous format hh:mm:ss le temps exact de fonctionnement de cette lumière

j'espère que mon explication est clair

merci de votre aide

8 réponses

  1. Bonsoir,

    A partir du moment où tu as récupéré les horodatages des ON et OFF, je mettrais toutes les dates de ON en colonne A, les OFF en colonne B. En C tu fais les B-A et tu additionnes toutes les valeurs de la colonne C.

    J'espère avoir suivi ton raisonnement et où se situe ton souci.

    Bon courage.
    0
    1. Merci de ta réponse , j'en prends bien note car elle peut m'aider à trouver la solution final

      Ce que je n'ai pas précisé (car je pensais réussir à adapter à ma situation. Excusez moi)
      c'est que je ne récupère pas l'info d'une seule lumière
      mais de toutes les lumières de la maison
      imaginons donc que je récupère les infos sous forme

      En colonne A "Nom de la pièce de la maison_lumière n°X_ETAT" (tout attaché ou tout dissocier en colonne , peu importe)
      En colonne B "l'heure"
      (cela est indiqué sur 1 journée donc pas de pb de date)

      Désolé de n'avoir pas précisé.
      0
      1. Faire un onglet par couple 'Nom de la pièce / X' ?

        Sinon, en colonne :
        - A garder le couple 'Nom de la pièce / X'
        - B ne garder que l'état
        - C l'heure
        Trier ensuite par :
        - A croissant
        - C croissant
        etc. ?
        0
        1. Je viens de regarder le fichier
          Vu le résultat ça à l'air d'être exactement ce qu'il me faut
          Merci beaucoup!

          il me reste à comprendre la totalité de la macro pour l'adapter à mon cas , j'essaye de vous tenir au courant (c'est le cas de le dire vu l'exemple)

          Encore Merci
          0
          1. De rien

            N'hésite surtout pas à revenir en cas de problème.

            Bon courage
            0
        2. Polux

          petite question

          est t'il possible dans ta macro de créer l'obligation qu'il fasse le calcul forcement par rapport à l'état précèdent
          cad que avec
          1 A hh:mm:ss 1
          2 B hh:mm:ss 1
          3 A hh:mm:ss 0
          4 B:hh:mm:ss 0

          une fois qu'il a trouvé le A état 0 qu'il fasse le calcul de temps toujours par rapport à A état 1 qui précède

          merci d'avance
          0
          1. La solution de Polux ne semble pas marcher s'il y a plusieurs cycles d'allumage/extinction.
            Ci-après une proposition (cf. Feuil2) traitant aussi les cas où :
            - on stocke d'abord une extinction ;
            - la dernière heure stockée correspond à un allumage.

            http://cjoint.com/data/fguaeVkSMx.htm

            A+
            0
            1. Zoul j'ai bien regardé la macro que tu m'as proposé

              j'avais fait une macro de ce type la , mais certains point restaient sans réponses.

              tu as résolu pour moi les problèmes que j'avais , je t'en remercie.

              Merci à tous pour ce que vous m'avez appris.
              Et j'espère que ce sujet en aidera plus d'un à trouver ses réponses
              0