SOMME.SI critère couleur

Asfero Messages postés 22 Statut Membre -  
Asfero Messages postés 22 Statut Membre -
Bonjour,

J'aimerais utiliser la fonction SOMME.SI avec comme critère la couleur des chiffres.
comment dois-je l'écrire ?
=SOMME.SI(.......)

Je veux additionner les chiffres rouges de la colonne A1 à A10 par exemple (seulement s'ils sont rouges)

et comment je fais pour utiliser une autre couleur que j'ai défini moi-même en fonction du RVB ???

Merci
Configuration: Windows XP
Firefox 3.0.10

13 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    bonjour,

    la couleur rouge de tes chiffres est elle manuelle ou venant d'une mise en forme conditionnelle (suite à ton 1° post de tout à l'heure) ?

    2
    1. Asfero Messages postés 22 Statut Membre
       
      MICHEL si tu pouvais m'éclaircir, se serait apprécié.

      merci
      0
  2. Asfero Messages postés 22 Statut Membre
     
    Bonjour,

    Elle vient d'une macro associé à une case à cocher. Quand je coche la case mon chiffre devient rouge. Cependant j'aimerai pouvoir utiliser une autre couleur que j'ai défini dans ma barre de couleur.

    Voila et j'aimerais qu'une cellule additionne toute mes chiffres pour lesquels j'ai cocher la case.

    Merci
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      Voila les différents codes de couleur utilisés en VBA
      https://www.cjoint.com/?fnpWeKdUAL

      Pourrais tu montrer ta macro, s'il te plait?
      0
      1. Asfero Messages postés 22 Statut Membre > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Michel

        voici le code de ma case à cocher

        Private Sub CheckBox1_Click()
        If Checkbox1.Value = True Then
        [F56] = [D56]
        [J56].Font.ColorIndex = 3

        Else
        [F56] = ""
        [J56].Font.ColorIndex = 0
        End If
        End Sub

        j'aimerais donc additionner les cellules J pour lesquelles seulement j'ai cocher la case donc qui est de couleur ?

        ma question est donc puisque je n'y connais rien en VBA, comment j'écris la formule de la somme avec une couleur à numéro VBA ? et ensuite comment j'associe ce code avec ma cellule ou je veux que l'addition se fasse.

        Merci d'être précis car je n'y connais vraiment rien ....
        0
  3. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    bonjour
    sous excel
    Il n'y a pas de formules en standard qui permettent de totaliser les cellules colorées
    En revanche,
    Tu peux passer par le biais de VBA

    Regarde ici un exemple

    http://bvrve.club.fr/Astuces_Michel/05excelvba.html#Color1

    bonne journée
    0
  4. Asfero Messages postés 22 Statut Membre
     
    Je te remercie mike mais si je veux pas utiliser le rouge je fais comment ??

    comment j'écris le code ?

    Michel

    voici le code de ma case à cocher

    Private Sub CheckBox1_Click()
    If Checkbox1.Value = True Then
    [F56] = [D56]
    [J56].Font.ColorIndex = 3

    Else
    [F56] = ""
    [J56].Font.ColorIndex = 0
    End If
    End Sub

    j'aimerais donc additionner les cellules J pour lesquelles seulement j'ai cocher la case donc qui est de couleur ?

    ma question est donc puisque je n'y connais rien en VBA, comment j'écris la formule de la somme avec une couleur à numéro VBA ? et ensuite comment j'associe ce code avec ma cellule ou je veux que l'addition se fasse.

    Merci d'être précis car je n'y connais vraiment rien ....
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      Bon!

      Il y a quelques petits trucs à améliorer dans ta macro checkbox mais pas grave!

      le mieux, si tu es limite en vbA, serait que tu joignes la feuille de ton classeur avec les checkboxe sur
      https://www.cjoint.com/
      et tu colles le lien proposé dans ton message
      0
    2. Asfero Messages postés 22 Statut Membre > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
       
      le problème c'est qu'elle n'est pas fini, je voulais comprendre le principe afin de faire tout le tableau ensuite car j'ai une centaine de checkbox a faire,

      ya vraiment pas un code que tu peux m'écrire avec un exemple de couleur et de case que je pourrais ajuster après ?

      si j'ai le code écrit je pourrai me débrouiller, mais j'ai besoin d'un exemple avec plusieurs cellule et une couleur en chiffre VBA.

      disons que je veux additionner les cellules A56 a J56 parmi lesquels les chiffres sont marron couleur 53

      merci de ton aide
      0
    3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320 > Asfero Messages postés 22 Statut Membre
       
      Re,

      Voici une fonction qui te calcule automatiquement la somme des "marron53"

      Function additionner_marron(plage As Range)
      Dim cellule As Range, total As Double
      For Each cellule In plage
      If cellule.Font.ColorIndex = 53 Then
      total = total + cellule
      End If
      Next
      additionner_marron = total
      End Function


      installation:
      c'est à copier-coller dans un module de VBE. TU as le comment faire dans la rubrique "astuces" de CCM rédigé par notre ami gbinforme (c'est bien ton article gbinforme, merci)
      http://www.commentcamarche.net/faq/sujet 8130 mise a jour d une procedure ou d une fonction en vba

      ensuite
      insertion-fonctions-fonctions personnalisées tu cliques sur "additionner_marron" et tu sélectionnes la plage
      (A56:J56) dans ton message


      les checkbox:
      il faut que je recherche dans mon grenier doliprane une technique pour les 100 Checkbox; donc certainement demain...
      0
    4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281 > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Bonsoir,

      J'avais préparé un truc mais michel a été plus rapide que moi...
      Je le met quand même et en plus ça me dispense des explications complètes qu'il vient de te fournir.

      La différence avec la macro de michel c'est que, pour apporter plus de souplesse vu ton indécision sur les couleurs, tu peux la définir dans une cellule. Et michel t'a fait une fonction personnalisée, ici c'est une macro à lancer.

      Choisi une cellule sur ta feuille, K1 par exemple, et tu nommes ta cellule Total1 (respecte la majuscule).
      Tu colles ce code comme t'a expliqué michel au-dessus :
      Sub total1()
          Dim c As Range, tot1 As Double
          For Each c In [J56:J58]
              If c.Interior.ColorIndex = Range("Total1").Interior.ColorIndex Then
                  tot1 = tot1 + c.Value
              End If
          Next c
          Range("Total1").Value = tot1
      End Sub


      Tu mets ta couleur de fond dans K1, tu lances la macro, le total des cellules (dans J56:J58) ayant la même couleur de fond que K1 est mis dans K1.
      exemple

      eric
      0
    5. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320 > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Re, Eric

      En définitive j'ai laissé tomber la fonction pour revenir à 1 sub pramétrée car la fonction se déclenchait chaque fois que l'on cochait ou décochait avec des résultats aberrants!

      donc dans le module1 on a:
      Sub additionner_53(plage As String)
      Dim cellule As Range, total As Double
      For Each cellule In Range(plage)
      If cellule.Font.ColorIndex = 53 Then
      total = total + cellule
      End If
      Next
      Range("K56") = total
      End Sub


      et dans le modulefeuil1:
      Private Sub CheckBox1_Click()
      
      If CheckBox1 Then
      [F56] = [D56]
      [J56].Font.ColorIndex = 53
      Else
      [F56] = ""
      [J56].Font.ColorIndex = vbnothing
      End If
      additionner_53 ("A56:J56")
      End Sub
      
      ci joint tit'  démo

      https://www.cjoint.com/?fnswKQcqWS

      Le gros boulot reste le paramétrage des 100 Checkbox mais j'ai pas envie, Asfero, de t'embarquer dans des modules de classe... A moins qu'Eric ou qqn d'autre connaisse une astuce pour faire ces paramétrages tranquillou...


      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    pas grave tu mets le code couleur correspondant à la couleur souhaitée
    0
  7. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    Pour obtenir tous les codes couleurs
    Exécuté la macro suivante

    Sub Affiche_couleurs()
    For i = 1 To 56
    Cells(i, 1).Interior.ColorIndex = i
    Next i
    End Sub
    0
  8. Asfero Messages postés 22 Statut Membre
     
    Salut mike

    voici le code que tu me proposes

    Sub TotalisationCouleurRouge()

    Set Aselectionner = Application.InputBox _
    (prompt:="selectionner la plage de cellule ", _
    Title:=" Plage de cellules à sélectioner", Type:=8)
    Aselectionner.Select 'Selection de la plage souhaitée
    For Each cel In Aselectionner
    If cel.Interior.ColorIndex = 3 Then SomRouge = SomRouge + cel
    Next cel
    MsgBox SomRouge
    End Sub

    je fais quoi quand il est écrit CouleurRouge
    SomRouge ???

    et comment j'écris la plage de mes cellules quand c'est écrit
    "selectionner la plage de cellule "
    " Plage de cellules à sélectioner"

    merci
    0
  9. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    lors de l 'exécution de la macro
    Tu sélectionnes les cellules à totaliser
    dans cet exemple, tu auras un total des cellules rouges
    0
  10. Asfero Messages postés 22 Statut Membre
     
    tu peux m'expliquer la procédure pour faire une macro en VBA dans une cellule car je n'y arrive pas.

    j'ouvre VBA, je vais dans insertion, puis module, mais ensuite, j'ai pas d'option pour sélectionner des cellules,

    merci d'être plus précis stp.

    je rapelle que je n'y connais rien alors me dire d'aller la , ca ne m'aide pas....
    0
  11. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    ecoute apparement tu ne fais pas les procedures cités sur les posts précédents
    N'essais pas de compliqué
    Donc on arrete la !!!

    bonne soirée
    0
  12. Asfero Messages postés 22 Statut Membre
     
    Salut,

    ce dont j'ai besoin c'est d'explication clair car je n'y connais rien, pas des renvoies à des explications générales.

    j'ai besoin de comprendre avec mes données pas des données générales, car je ne sais pas comment écrire les codes....

    voila tout
    0
  13. Asfero Messages postés 22 Statut Membre
     
    WOAAAAA ok

    Merci a vous deux!!!! malheureusement je manque de temps ces derniers jours pour essayer tout ca.

    Je vous remercie de votre aide et vous allez me revoir si je n'y suis pas arrivé hehe.

    Merci énormément !!!!!!!!!
    0