Bonjour.
Pourriez-vous m'aider svp... ?
(Sous excel 2007-2010)
J'ai un tableau de données sur trois colonnes T,X,Y où T est le temps et X,Y sont des grandeurs enregistrées à une cadence donnée. Je peux choisir la fréquence d'échantillonnage en fait (ou le pas d'incrémentation entre les lignes Ti du tableau) de quelques millisecondes et plusieurs secondes. X variant de 0 à 7000 et croissant en général, et Y variant de -20 à 2000 est une grandeur aléatoire indépendantes de X. Mon fichier texte de sortie ou tableau Excel peut donc contenir quelques centaines de lignes à quelques dizaines de milliers suivant le pas choisi à l'enregistrement.
La grandeur X étant associée à Y (couple de points à un temps Ti donné) j'aimerais réduire le nombre de lignes de mon tableau après dépouillement en procédant par pas de N sur les données Xi (N=1 ; 5 ou 10 ... au choix) : c'est-à-dire ne retenir les lignes [Ti, Xi et Yi] de mon tableau que lorsque la grandeur Xi aura augmenté du pas N que je me suis fixé. Ou encore extraire les lignes vers une autre feuille (ou autres colonnes) chaque fois que (Xi+k - Xi) = N ou sera peu différent de N.
« N » le pas d'incrément pris entre les Xi du tableau de sortie est un entier alors que les valeurs sur les lignes Xi du tableau ne sont pas des entiers. Et donc il me faut à chaque fois retenir sur les lignes, les Xi les plus proches d'un d'un entier.
En conclusion il faut à chaque fois récupérer les valeurs [Ti, Xi, Yi] d'une ligne, mais seulement et à chaque fois que la grandeur X aura augmenté de l'incrément donné (par exemple quand Xi= 0, 5, 10 ..... 7000 pour un pas N=5. En sachant que Xi est positif, croissant mais peut être parfois constant et donc redondant sur plusieurs dizaines de lignes indépendamment du temps T et de Y.
Je n'ai pas l'habitude du VBA et je n'arrive pas à voir simple : j'ai pensé partir de la première ligne, chercher à tester quand est-ce que (Xi+k - Xi)>=N et retenir les lignes vérifiant l'égalité ... Mais entre faire une opération en incrémentant à chaque fois les lignes, retenir que les parties entières des Xi : Int(Xi)+1 ou Sup(Xi), extraire les données au même format d'origine ... j'avoue que ça j'aurais besoin d'aide.
Désolé si un peu long et merci d'avance
Pourriez-vous m'aider svp... ?
(Sous excel 2007-2010)
J'ai un tableau de données sur trois colonnes T,X,Y où T est le temps et X,Y sont des grandeurs enregistrées à une cadence donnée. Je peux choisir la fréquence d'échantillonnage en fait (ou le pas d'incrémentation entre les lignes Ti du tableau) de quelques millisecondes et plusieurs secondes. X variant de 0 à 7000 et croissant en général, et Y variant de -20 à 2000 est une grandeur aléatoire indépendantes de X. Mon fichier texte de sortie ou tableau Excel peut donc contenir quelques centaines de lignes à quelques dizaines de milliers suivant le pas choisi à l'enregistrement.
La grandeur X étant associée à Y (couple de points à un temps Ti donné) j'aimerais réduire le nombre de lignes de mon tableau après dépouillement en procédant par pas de N sur les données Xi (N=1 ; 5 ou 10 ... au choix) : c'est-à-dire ne retenir les lignes [Ti, Xi et Yi] de mon tableau que lorsque la grandeur Xi aura augmenté du pas N que je me suis fixé. Ou encore extraire les lignes vers une autre feuille (ou autres colonnes) chaque fois que (Xi+k - Xi) = N ou sera peu différent de N.
« N » le pas d'incrément pris entre les Xi du tableau de sortie est un entier alors que les valeurs sur les lignes Xi du tableau ne sont pas des entiers. Et donc il me faut à chaque fois retenir sur les lignes, les Xi les plus proches d'un d'un entier.
En conclusion il faut à chaque fois récupérer les valeurs [Ti, Xi, Yi] d'une ligne, mais seulement et à chaque fois que la grandeur X aura augmenté de l'incrément donné (par exemple quand Xi= 0, 5, 10 ..... 7000 pour un pas N=5. En sachant que Xi est positif, croissant mais peut être parfois constant et donc redondant sur plusieurs dizaines de lignes indépendamment du temps T et de Y.
Je n'ai pas l'habitude du VBA et je n'arrive pas à voir simple : j'ai pensé partir de la première ligne, chercher à tester quand est-ce que (Xi+k - Xi)>=N et retenir les lignes vérifiant l'égalité ... Mais entre faire une opération en incrémentant à chaque fois les lignes, retenir que les parties entières des Xi : Int(Xi)+1 ou Sup(Xi), extraire les données au même format d'origine ... j'avoue que ça j'aurais besoin d'aide.
Désolé si un peu long et merci d'avance