Récupérer valeur dans un tableau avec boucle sous VBA

Récupérer valeur dans un tableau avec boucle sous VBA - VB/VBA/VBS - Programmation

Marsh Posté le 12-05-2015 à 16:49:22    

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.  

Code :
  1. Option Explicit
  2. Option Base 1
  3. Sub Tmaxmin_jour()
  4. Dim Derlig As Integer, Nbre_jours As Integer
  5. Dim lig As Integer, Jour As Integer, T_jour, T_temp, T_out
  6. Dim tab_temp(8760) As Variant
  7. 'initialisations
  8.     Application.ScreenUpdating = False
  9.     'nettoyage tableau résultats
  10.     Range("H3:L370" ).ClearContents
  11.     Derlig = Columns("A" ).Find("*", , , , , xlPrevious).Row
  12.     Nbre_jours = (Derlig - 1) / 24 ' prendre en compte année bissectiles
  13.     ReDim T_out(Nbre_jours, 5) 'champ2=jour, 1=mois 3:maxi,4: mini, 5 moyenne
  14.    
  15. '------Mémorisation des températures maxi/mini/moyenne par jour/mois
  16.     For lig = 2 To Derlig Step 24
  17.         Jour = Jour + 1
  18.         T_jour = Range(Cells(lig, "A" ), Cells(lig, "B" ))
  19.         T_temp = Range(Cells(lig, "D" ), Cells(lig + 23, "D" ))
  20.         T_out(Jour, 1) = T_jour(1, 1)
  21.         T_out(Jour, 2) = T_jour(1, 2)
  22.         T_out(Jour, 3) = Application.Max(T_temp)
  23.         T_out(Jour, 4) = Application.Min(T_temp)
  24.         T_out(Jour, 5) = Application.Average(T_temp)
  25.         tab_temp(Jour) = T_out(Jour, 5)
  26.        
  27.     Next
  28. '-----Restitutions des mesures
  29.     Range("H3" ).Resize(UBound(T_out), 5) = T_out
  30.     Range("O2" ).Resize(UBound(tab_temp)) = tab_temp
  31. 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,

Reply

Marsh Posté le 12-05-2015 à 16:49:22   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed