Ne garder que la première donnée d'une série d'heures

Bonjour,

Merci encore pour ta patience et ton aide.

J'ai essayé de modifier le code pour supprimer les lignes, car tout faire faire à son voisin, sans participer, c'est pas très génial mais ça démontre rapidement que mes connaissances en développement VBA sont très limitées

Voici ma modif:

Suite_Boucle:
        If HAC = False Then '  L'heure examinée ne figure pas dans la liste des heures à conserver
            '.Range("A" & Compteur).Interior.Color = 65535 'couleur
                        .Range("A" & Compteur).Rows("1:1").EntireRow.Select
                        Selection.Delete Shift:=xlUp

        Else
            If MonJour = MonJourPrécédent Then
                If MonHeure = MonHeurePrécédente Then
                    '.Range("A" & Compteur).Interior.Color = 65535 'couleur
                        .Range("A" & Compteur).Rows("1:1").EntireRow.Select
                        Selection.Delete Shift:=xlUp

                Else
                     '.Range("A" & Compteur).Interior.Color = xlNone 'couleur
                        .Range("A" & Compteur).Rows("1:1").EntireRow.Select
                        Selection.Delete Shift:=xlUp

                End If
            End If
        End If
        MonJourPrécédent = Format(.Range("A" & Compteur).Value, "00000000")
        MonHeurePrécédente = Left(Format(.Range(MaColonneHeures & Compteur).Value, "000000"), 2)
    Next Compteur

Malheureusement, ça supprime de lignes, mais pas les bonnes.

Surtout, si tu as peux de temps, il n'y a pas urgence. C'est déjà super sympa de m'accorder tant de temps.

@+

Robert

Bonjour,

Ne voyant pas de commentaires sur ma proposition je m'inquiète de savoir si tu as pu la chargée... ou si la solution proposée ne correspond pas à tes attentes ?

A+

Chris

Bonjour,

Non, Chris j'ai regardé, mais vu que je suis contraint au VBA, je continue dans ce sens.

Tu as indiqué que tu avais faits les formules pour le fichier limité en lignes, donc j'évite de faire travailler plus qu'il ne le faut les bonnes âmes qui m'aident.

Je ne me suis pas trop penché sur tes formule, manque de temps.

Au final de mon fichier, il va falloir que je trouve une solution pour établir des graphiques selon le besoin, peut être par l'intermédiaire de boites de choix, semaine, mois année, pluie, vent, humidité etc ...

Je ne suis pas au bout de mon projet.

Merci beaucoup pour ta participation

@+

Robert

Robert,

Comme je te l'ai dit, je ne pense pas avoir le temps de me pencher sur ton problème avant le week-end.

Mais je compte surtout rédiger une deuxième macro, pour la suppression des lignes en jaune, qui n'hypothèquera pas le fonctionnement de la première.

A+ Daniel

Merci Daniel.

Ne t'affole pas y a pas urgence.

@+

Robert

OK je voulais juste savoir si tu avais pu charger le fichier qui prévoit de travailler sur un an. C'était la première fois que je sauvais un fichier Excel en binaire et je voulais savoir si cela fonctionnait bien.

A toutes fins utiles, il est tout à fait possible de combiner l'importation des données en VBA et le traitement automatique par fonctions et j'ai limité à un an car c'est ce que tu as demandé mais il est également possible de monter au delà.

A toi de voir

A+

Chris

Oups, excuses moi, je n'avais pas chargé le fichier.

Je viens de cliquer sur le lien. Il m'est demandé de cliquer sur le fichier, ce que j'ai fait et surprise, à l'ouverture, voici ce que j'ai:

PXT������ S�6R� x�=��< �'�mN� �䴗^K+����6m�^<@�����@�B�!"&�����3��B,�4.����Kԭ�x��j#}|�|1%F���]�Kg��oS�qq��~���u��G��k�.�$���<o�}��y����.J�����/�ݺ;�8�K'/j����g�9y�DV��;(�9��j=��G\�g~�F}��_�������PK-������!� �������������������������[Content_Types].xmlPK-������!�C�������L��������

Il n'y a rien pour enregistrer ou autre

Bonsoir,

Merci d'avoir essayé. Je ne comprend pas, j'ai essayé de récupérer le fichier et cela marche très bien chez moi. Je suis parti d'Excel 7.

As tu une version inférieure ?

En ce qui concerne ci-joint, il fallait cliquer sur le pavé rouge (au centre et dans la partie supérieure) appelé "accéder au fichier" et normalement il doit te le transmettre et si tu cliques dessus (en bas à gauche) tu obtiens le tableur.

Bon cela ne fait rien, c'est dommage car cela marchait très bien.

A+

Chris

Bonjour à tous,

Voilà, je crois que cette fois, on a un résultat acceptable : 173 000 lignes traitées en 17 secondes...

Refaire un jeu d'essai pour tester. Le traitement se lance en cliquant sur le bouton "Suppression lignes excédentaires", qui exécute les macros successives suivantes :

1 - Trier : toute la feuille est triée sur la date puis sur l'heure (colonnes A et B)

2 - Colorer : chaque ligne est examinée, et les lignes sont déterminées comme excédentaires en fonction des réglages (feuille Paramètres). Pour les lignes excédentaires, la cellule de la colonne A est coloriée en jaune

3 - Supprimer : un filtre sur la couleur jaune de la cellule A n'affiche que les lignes excédentaires, qui sont supprimées. Le filtre est ensuite ôté, ne laissant à l'écran que les lignes conservées.

J'espère que ça te conviendra...

Cordialement, Daniel

Bonjour à tous

Trop super, merci beaucoup pour ton aide

59 secondes, chronomètre en mains pour traiter la feuille de base qui comportait 138732 lignes et 62 colonnes.

Heureusement que nous avons des pros pour nous aider.

Plus qu'à créer les divers graphiques.

@+

Robert

Rechercher des sujets similaires à "garder que premiere donnee serie heures"