question de base sur une routine d'extraction de données

  • Initiateur de la discussion Initiateur de la discussion dgse
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dgse

XLDnaute Nouveau
Bonjour,

Je suis novice; j'ai travaillé il y a pas mal d'année en fortran mais j'ai perdu en pratique et là, il faut que je créé une routine sur excel en VBA. Ce qu'il faut que je fasse vous paraitra tout simple et bête mais je remarque que je suis pas douée sur les commandes.

Je vais avoir un fichier de données type:
date/heure/hauteur eau/oxygène/... tiré d'un réseau de mesure de qualité de l'eau en continu.

Il faut que je puisse extraire les données par ligne en fonction d'une condition lié à la cellule oxygène. Il faut que je copie sur la feuille 2 vierge, les lignes au niveau desquelles la valeur oxygène est inféreure à 4 (l'objectif étant de savoir pendant combien de temps et à quelle moment de la journée les taux d'oxygène sont faibles).
Pour les plus forts d'entre vous, ce sera un jeu d'enfant et ça m'aiderait énormément.
Je vous remercie d'avance.
 
Re : question de base sur une routine d'extraction de données

Bonsoir dgse et bienvenue sur le forum,
Je ne sait pas si je pourrais t'aider mais il serait préférable de fournir un fichier exemple avec quelques indications supplémentaires....
Cordialement
 
Re : question de base sur une routine d'extraction de données

[Salut dgse et le forum
Bienvenue
Ce que je crois comprendre :
Extraire les lignes dont la colonne D de la feuille 1 dont la valeur est inférieure à 4, et les cpier en feuille 2
- on peut le faire à travers un filtre auto, puis en copier/coller
Sélectionner la ligne 1 de feuille 1
Menu Données>>filtrer>>Filtre automatique
Tu peux définir des critères pour chaque colonne, à l'aide du menu déroulant.
Un copier (Ctrl+C) sur la plge filtrée ne collera (Ctrl+V) que ces données sur la feuille 2

- on peut le faire avec un filtre élaboré (en décalant les lignes pour créer une plage de critères). Mais il faut des données précises.

Les deux peuvent s'automatiser par macros.

Sinon, on peut faire une simple boucle, qui teste D<4 et dans ce cas, copie :
Code:
Sub test()
'Déclaration ------------------
Dim cel As Range
Dim F1 As Worksheet, F2 As Worksheet
'MEI --------------------------
Set F1 = Sheets("Feuil1")       'Feuil1 étant le nom de la feuille source
Set F2 = Sheets("Feuil2")       'Feuil1 étant le nom de la feuille arrivée
'Traitement -------------------
For Each cel In F1.Range(F1.[A2], F1.Cells(Rows.Count, "A").End(xlUp))
'Pour chaque cellule de A, non vide
    If cel.Offset(0, 3) < 4 Then
    'Pour chaque cellule décalée de 3 colonne à droite onférieure à 4
        F1.Rows(cel.Row).Copy F2.Cells(Rows.Count, "A").End(xlUp)(2)
        'Copier La ligne de cel dans la première ligne vide en A de F2
    End If
Next cel
'Cellule suivante
'Copie des titres ------------
F1.Rows(1).Copy F2.Rows(1)
End Sub
Comme c'est un code simple, je ne l'ai pas testé.
La colonne A sert de référence, une date ne pouvant être vide.
Bien que comprhensible (et donc facilement adaptable), je préfère utiliser les filtres : c'est plus rapide en exécution. Après, ça dépend du nombre de lignes à traiter, et des performances de l'informatique.
A+
 
Re : question de base sur une routine d'extraction de données

Bonjour,

Gorfael, merci, tu as bien compris ce que je voulais dire. Pour ce qui est d'excel de base genre filtre, tableau dyn., etc, là je ne suis pas du tout novice. Si je voulais créer une boucle et non un filtre automatique c'est pour une raison de quantité de données : 4 mois de données à raison d'une mesure toutes les dix minutes et cela sur 4 années de suivi donc t'imagines un peu la taille du fichier final si je ne le fractionne pas.
Je vais tester ta boucle, s'il y a des petits bugs de synthaxe ou autre, je pense m'en sortir ... sinon, je vous recontacterais. lol
Merci encore et bonne journée.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
40
Affichages
2 K
Réponses
9
Affichages
831
Retour