Boucle permettant de récupérer valeur
Prunett
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
Frenchie83 Messages postés 2240 Date d'inscription Statut Membre Dernière intervention -
Frenchie83 Messages postés 2240 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Après avoir calculé la moyenne des températures par jour pour chaque jour de l'année, j'aimerais reporté les valeurs dans une autre colonne mais cette fois ci pour chaque heure.
Je m'explique, j'ai déjà calculé la température moyenne pour le 1/01 sur 24h. Maintenant j'aimerais reporter cette valeur pour les 24h du 1/01 et renouveller cette procédure pour l'ensemble des jours de l'année.
Le problème est que j'ai seulement la première valeur (le 1/01) et cela pour l'ensemble des jours de l'année qui s'affiche dans ma nouvelle colonne.
En vous remerciant d'avance,
Après avoir calculé la moyenne des températures par jour pour chaque jour de l'année, j'aimerais reporté les valeurs dans une autre colonne mais cette fois ci pour chaque heure.
Je m'explique, j'ai déjà calculé la température moyenne pour le 1/01 sur 24h. Maintenant j'aimerais reporter cette valeur pour les 24h du 1/01 et renouveller cette procédure pour l'ensemble des jours de l'année.
Option Explicit Option Base 1 Sub Tmaxmin_jour() Dim Derlig As Integer, Nbre_jours As Integer Dim lig As Integer, Jour As Integer, T_jour, T_temp, T_out Dim tab_temp(8760) As Variant 'initialisations Application.ScreenUpdating = False 'nettoyage tableau résultats Range("H3:L370").ClearContents Derlig = Columns("A").Find("*", , , , , xlPrevious).Row Nbre_jours = (Derlig - 1) / 24 ' prendre en compte année bissectiles ReDim T_out(Nbre_jours, 5) 'champ2=jour, 1=mois 3:maxi,4: mini, 5 moyenne '------Mémorisation des températures maxi/mini/moyenne par jour/mois For lig = 2 To Derlig Step 24 Jour = Jour + 1 T_jour = Range(Cells(lig, "A"), Cells(lig, "B")) T_temp = Range(Cells(lig, "D"), Cells(lig + 23, "D")) T_out(Jour, 1) = T_jour(1, 1) T_out(Jour, 2) = T_jour(1, 2) T_out(Jour, 3) = Application.Max(T_temp) T_out(Jour, 4) = Application.Min(T_temp) T_out(Jour, 5) = Application.Average(T_temp) tab_temp(Jour) = T_out(Jour, 5) Next '-----Restitutions des mesures Range("H3").Resize(UBound(T_out), 5) = T_out Range("O2").Resize(UBound(tab_temp)) = tab_temp End Sub
Le problème est que j'ai seulement la première valeur (le 1/01) et cela pour l'ensemble des jours de l'année qui s'affiche dans ma nouvelle colonne.
En vous remerciant d'avance,
A voir également:
- Boucle permettant de récupérer valeur
- Recuperer message whatsapp supprimé - Guide
- Impossible de récupérer mon compte gmail - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment récupérer un compte facebook piraté - Guide
- Comment recuperer une video sur youtube - Guide
1 réponse
Bonjour
Le passage par le VBA n'est pas nécessaire, une simple formule suffit.
Voici une proposition avec 3 méthodes de présentation différentes (la méthode 1 est la plus logique)
https://www.cjoint.com/c/EEngmGYR9zw
A adapter à votre fichier si cela vous convient
Cdlt
Le passage par le VBA n'est pas nécessaire, une simple formule suffit.
Voici une proposition avec 3 méthodes de présentation différentes (la méthode 1 est la plus logique)
https://www.cjoint.com/c/EEngmGYR9zw
A adapter à votre fichier si cela vous convient
Cdlt