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 :

Dans un tableau, compter nombre de fois ou la valeur d'une ligne est le maximum de la colonne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Par défaut Dans un tableau, compter nombre de fois ou la valeur d'une ligne est le maximum de la colonne
    Bonjour à tous et merci d'avance pour votre aide,

    Je ne sais pas comment formuler ma requête en une phrase simple (d'où le titre foireux), mais voici ce que je cherche à faire dans Excel (formules ou VBA).

    J'ai un tableau du style,

    colA  /  colB  /  colC  /  total
     2         1        4
     0         3        2
     4         1        3
     2         2        5

    Je voudrais que dans la colonne "total", il affiche le nombre de fois où la valeur de la ligne est la max de la colonne correspondant, càd dans cet exemple, respectivement pour les lignes 1-2-3-4 les valeurs 0-1-1-1

    PS: ma version d'excel est an Anglais, même si je peux traduire si nécessaire

    Merci

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,

    Je voudrais que dans la colonne "total", il affiche le nombre de fois où la valeur de la ligne est la max de la colonne correspondant, càd dans cet exemple, respectivement pour les lignes 1-2-3-4 les valeurs 0-1-1-1
    Qu'appelles-tu "la valeur de la ligne" ?
    Pour moi :
    2 1 4 = 7
    0 3 2 = 5
    4 1 3 = 8
    2 2 5 = 9
    alors "les valeurs 0-1-1-1" elles viennent d'où ?

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Par défaut
    Haha, merci de ta réponse.

    Je savais que j'avais du mal à décrire correctement. En fait, je veux compter le nombre de fois ou la valeur d'une cellule de la ligne (par exemple ligne 1 colonne 1) est la valeur MAX de toute la colonne (donc entre les cellules des lignes 1 à 4 dans la colonne1).

    Ca donne donc pour la ligne 1:
    * 2 n'est pas le max de la colonne 1 ---> 0
    * 1 n'est pas le max de la col 2 ---> 0
    * 4 n'est pas le max de la col 3 --> 0

    ==> Somme pour la colonne total de la ligne 1 est donc 0+0+0 = 0

    Pour la ligne 2:
    * 0 n'est pas le max de la col 1 --> 0
    * 3 est bien le max de la col 2 --> 1
    * 2 n'est pas le max de la col 3 --> 0

    ==> somme pour la ligne 2 = 0+1+0 = 1

    Idem pour lignes 3 et 4


    Merci

    Si ca peut etre plus parlant avec un exemple concret, voici un tableau qui reprend les notes de 4 élèves dans 4 branches différents.
    Je souhaiterais remplir la dernière colonne comme dans le tableau mais avec formule/VBA.

    Eleves Anglais Math Géographie Sciences Nombre de fois meilleurs points
    Antoine 10 3 14 18 0
    Laurent 15 12 11 13 1
    Kevin 10 8 16 14 1
    Achille 16 11 7 19 2

  4. #4
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Re

    Si j'ai compris correctement, tu as le résultat avec cette formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(MAX(A:A)=A1;1;0)+SI(MAX(B:B)=B1;1;0)+SI(MAX(C:C)=C1;1;0)
    et tu prolonges avec plus de colonnes

  5. #5
    Membre très actif
    Homme Profil pro
    Inscrit en
    Février 2009
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2009
    Messages : 163
    Par défaut sur combien
    slts,
    Disons que moi je fais ça à l'ancienne avec une macro, LOL

    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
    'Macro
    Sub Max_Par_Colonnes()
    Dim sSUM As String
    Dim maxBB As Long, maxCC As Long, maxDD As Long, maxEE As Long, nbl As Long
    Dim xRow As Object
     
    'Max Colonnes
    maxBB = Application.WorksheetFunction.Max(ActiveSheet.Range("B:B"))
    maxCC = Application.WorksheetFunction.Max(ActiveSheet.Range("C:C"))
    maxDD = Application.WorksheetFunction.Max(ActiveSheet.Range("D:D"))
    maxEE = Application.WorksheetFunction.Max(ActiveSheet.Range("E:E"))
     
    'Lignes
    For Each xRow In ActiveSheet.UsedRange.Rows
    sSUM = "-"
    If xRow.Cells(2).Value = maxBB Then sSUM = sSUM & "1-" Else sSUM = sSUM & "0-"
    If xRow.Cells(3).Value = maxCC Then sSUM = sSUM & "1-" Else sSUM = sSUM & "0-"
    If xRow.Cells(4).Value = maxDD Then sSUM = sSUM & "1-" Else sSUM = sSUM & "0-"
    If xRow.Cells(5).Value = maxEE Then sSUM = sSUM & "1-" Else sSUM = sSUM & "0-"
    xRow.EntireRow.Cells(1, 6).Value = sSUM
    Next xRow
     
    End Sub
    Nom : ______maxxx.JPG
Affichages : 480
Taille : 41,6 Ko

Discussions similaires

  1. [Vxi3] Compter nombre de fois valeurs
    Par thibaultspreux dans le forum Webi
    Réponses: 2
    Dernier message: 04/11/2011, 09h14
  2. proc tabulate % dans le tableau, mais nombre dans le total
    Par traersa dans le forum ODS et reporting
    Réponses: 1
    Dernier message: 10/06/2011, 17h37
  3. Réponses: 3
    Dernier message: 26/10/2010, 22h14
  4. le nombre de fois que l'on trouve une chaine dans le formulaire
    Par mioke dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/08/2009, 17h05
  5. trier par le nombre de fois que la valeur est présente
    Par Kage57 dans le forum Requêtes
    Réponses: 2
    Dernier message: 28/05/2009, 15h43

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