En VBA calcul moyenne selon plusieurs critères

Prunett Messages postés 31 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

Dans le cadre d'un projet, je souhaiterais faire la moyenne des températures pour un mois sur plusieurs plages horaires.
J'ai 5 plages horaire par jour et elles sont variables en fonction de l'occupation du bâtiment.
J'ai deux problèmes différents :
- le premier calculer le nombre d'heure par mois pour chaque plage horaire
- le deuxième calculer la somme des températures (je ne trouve pas la fonction somme dans VBA, j'ai déjà essayé SUM, mais sans aucun résultat).

En vous remerciant d'avance,

3 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    En vba

    s =Application.WorksheetFunction.Sum( .... )

    Pour le reste, un bout de fichier (au format excel 2003) à envoyer sur cjoint.com et tu joins le lien obtenu à ton prochain message. N'oublies pas des explications et des exemples

    Cdlmnt
    0
    1. Prunett Messages postés 31 Statut Membre
       
      Merci beaucoup pour la formule.

      http://www.cjoint.com/data/0CApXTIk4jc.htm

      Le but de mon fichier est que l'utilisateur n'ait juste à remplier la feuille "Utilisateur" et les résultats s'affichent dans la feuille "Résultat".

      Cependant, j'ai des feuilles intermédiaires avec des valeurs feuille "Tableau Valeur".

      En fait ce que je souhaite avoir, c'est obtenir les informations type température, pression saturante... lorsque nous sommes en situation de confort ou non pour l'occupant. Afin de pouvoir exploiter ces données, j'aimerais obtenir une journée type par mois (une confort et une non confort) sur 5 plages horaires qui sont :
      - 1h début occupation
      - début occupation midi
      - midi 14h
      - 14h fin occupation
      -fin occupation 24h

      Je voulais créer une macro directement qui calcule pour chaque tranche horaire la moyenne de la température. Cependant, n'y arrivant pas, j'ai décidé d'afficher les données qui m'intéressent (macro jour_type) en fonction de ces plages horaires et de travailler ensuite sur ces informations. L'affichage de ces valeurs est un peu long dans la feuille tableau de valeur.

      En te remerciant d'avance,
      0
    2. Prunett Messages postés 31 Statut Membre
       
      Et donc pour avoir la moyenne des données, il faut que j'arrive à comptabiliser le nombre d'heure que j'ai exactement sur ces plages horaires pendant le mois.

      J'avais pensé à ce bout de code, cependant cela ne fonctionne pas et fait planter le logiciel :

      Sub Journée_type()

      'Déclaration des variables
      Dim tab_heure_solaire(8761) As Variant
      Dim deb_occ As Variant
      Dim nb_heure_j_1 As Variant

      'Enregistrement des variables

      deb_occ = Worksheets("Utilisateur").Cells(8, 6)
      fin_occ = Worksheets("Utilisateur").Cells(9, 6)


      For i = 0 To 8761


      tab_heure_solaire(i) = Sheets("Tableau Valeur").Range("C" & i + 2)

      For j = 0 To 744

      If tab_heure_solaire(i) >= 1 And tab_heure_solaire(j) < deb_occ Then

      nb_heure_j_1 = Application.WorksheetFunction.Count(Sheets("Tableau Valeur").Range("C2:C744"))

      End If

      Next
      Next
      End Sub
      0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Désolé, je ne peux pas lire ton fichier, je l'avais demandé au format excel 2003 (fichier/enregistrer sous/type ... .xls

    Cdlmnt
    0
    1. Prunett Messages postés 31 Statut Membre
       
      http://www.cjoint.com/data/0CAqBXUbCO1.htm

      Excuse moi, j'avais mal lu ton commentaire
      0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Ouaouh,
    Quand j'ai demandé un bout de fichier (post #1) , je voulais vraiment dire un bout de fichier.
    Bon, je ne pense pas pouvoir me plonger dans tes programmes, c'est beaucoup trop long. Par contre, si tu me dis de façon précise
    - Ce que tu veux obtenir
    - Dans quelle feuille
    - A partir de quoi
    - Dans quelle feuille
    Et me donner un exemple de résultat attendu
    Je peux peut être faire quelque chose
    RQ1. Dans tes procédures, par exemple Synthèse, tu refais toute la mise en forme des feuilles, qui va être exécutée à chaque lancement. Est ce vraiment nécessaire ?
    RQ2. Tu déclares une foule de variables, par exemple dans Journée_type, et certaines sont déclarées deux fois, sont elles réellement toutes utilisées, comment arrives tu à t'y retrouver ?

    Bon courage
    0