IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA moyenne avec coefficient


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 2
    Par défaut VBA moyenne avec coefficient
    Bonjour je voudrais calculer la moyenne avec les coefficients en langage VBA cependant je suis totalement novice.
    Le programme tourne mais je sais pas comment inclure les coefficients.
    Je voudrais également colorier en rouge si la moyenne est inférieur à 10 et en vert si elle est sup ou égale à 10.
    Je voudrais également les centrées horizontalement et verticalement à deux chiches après la virgule.

    Je suis assez perdue.

    Merci par avance



    Nom : Capture vba.PNG
Affichages : 1497
Taille : 10,7 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Sub Calculmoyenne()
    Dim K As Long, Formule As String
    Dim Moyenne As Integer
     
     
        Range("E2").Select
        K = (Range("C2:U2").End(xlToRight).Column + 1) 'selectionne la derniere cellule vide sur la ligne 2'
        Cells(1, K).Value = "Moyenne" ' donne à la colonne de cette cellule le nom de moyenne''
     
     For i = 2 To 6 'calul la moyenne sur chaque ligne'
        Formule = "=AVERAGE(" & Cells(i, 3).Address & ":" & Cells(i, K - 2).Address & ")"
        Cells(i, K).Value = Formule
        Next
     
      If Moyenne < 10 Then Interior.Color = vbRed
      If Moyenne <= 10 Then Interior.Color = vbGreen
     
    End Sub

  2. #2
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub Calculmoyenne()
    Dim K As Long, Formule As String
    Dim Moyenne As Integer
     
     
        Range("E2").Select
        K = (Range("C2:U2").End(xlToRight).Column + 1) 'selectionne la derniere cellule vide sur la ligne 2'
        Cells(1, K).Value = "Moyenne" ' donne à la colonne de cette cellule le nom de moyenne''
     
     For i = 2 To 6 'calul la moyenne sur chaque ligne'
        Formule = "=AVERAGE(" & Cells(i, 3).Address & ":" & Cells(i, K - 2).Address & ")"
        Cells(i, K).Value = Formule
        Next
     
      If Moyenne < 10 Then Cells(i, K).Interior.Color = vbRed
      If Moyenne <= 10 Then Cells(i, K).Interior.Color = vbGreen
     
          Cells(i, K).HorizontalAlignment = xlCenter
           Cells(i, K).VerticalAlignment = xlCenter
            Cells(i, K).NumberFormat = "0.00"
     
     
    End Sub

  3. #3
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    c'est normal , je trouvais ça bizarre ................

    avec ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Range("E2").Select
       K = (Range("C2:U2").End(xlToRight).Column + 1) 'selectionne la derniere cellule vide sur la ligne 2'
        Cells(1, K).Value = "Moyenne" ' donne à la colonne de cette cellule le nom de moyenne''

    l'écriture se fait dans la première colonne libre et rajoute donc une colonne a chaque lancement de la macro.

    si le but est d'écrire systématiquement la moyenne dans la colonne E, ce que je suppose

    ce bout de code ne sert à rien il faut le supprimer et remplacer par K = 5



    je n'ai sans doute pas tout compris.

    Bonne journée

  4. #4
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 2
    Par défaut
    Merci beaucoup, du coup en effet ça fonctionne ça ne me met plus les résultats sur d’autres colonnes.
    Mais du coup ça me change le résultat sur les notes de test final.
    Et ça ne me prend pas en compte les coefficients.

Discussions similaires

  1. Moyenne avec coefficient
    Par Peall13 dans le forum Excel
    Réponses: 7
    Dernier message: 29/01/2017, 19h14
  2. Moyenne avec variable vba
    Par juliette81 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/10/2015, 09h36
  3. Calcul moyenne avec coefficient
    Par dharth dans le forum Débuter
    Réponses: 14
    Dernier message: 17/07/2009, 20h10
  4. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 14h24
  5. [VBA-E] avec une fonction value
    Par laas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/11/2002, 14h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo