Excel, Somme des cellules jaune

Résolu
Jean_phi28 -  
Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour tout le monde,

Ca fait une journee que j essaie de trouver une solution pour additionner de maniere automatique les valeurs accompagnees par une etoile.
Dans l exemple suivant, j aimerai addtionner 125, 25, 25, et 50.

125*
to be reviewed
25*
275
375
to be reviewed
900
400
25
2800
25*
200
to be reviewed
50*
to be reviewed

Merci d avance pour votre aide,

Jean Philippe

2 réponses

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

    par une fonction personnalisée

     Sub test()
       MsgBox additionner_si_etoile(Range("A1:A14"))
    End Sub
    
    '-------
     Function additionner_si_etoile(plage As Range) As Double
    Dim cellule As Range, pos As Byte
    For Each cellule In plage
        pos = InStr(cellule, "*")
        If pos > 0 Then
              somme = somme + CDbl(Left(cellule, pos - 1))
         End If
    Next
    additionner_si_etoile = somme
    End Function
    
    
    
    0
    1. Jean_phi28
       
      Bonjour Michel,

      J ai essaye d utiliser ta macro mais ca n a pas fonctionne.
      Merci d avance pr ton aide
      0
    2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      bonjour,

      J'avais essayé avant d'envoyer: ça marchait....

      mais ca n a pas fonctionne.
      Merci d'être précis, je n'ai pas de boule de cristal
      0
    3. jean_phi28 Messages postés 3 Statut Membre
       
      Je ne comprends pas. Voici le veritable fichier.

      Il faut que j additionne 50*, 125*, 25*, 25* de maniere automatique

      15660001 PWI P 7642/2 WHP -H- 725
      15660101 PWI L 7642/2 WHP -H- 1300
      15664601 PBH P 5351/2 RED -H- 50
      15671501 PBH P 7611/4 GNP -H- to be reviewed
      15671601 PBH L 7611/4 GNP -H- 50*
      15672901 PBH L 7649/2 PIP -H- 225
      15673901 PBH P 7645/2 PIP -H- 125*
      15674200 PBH P 74946/2 PIP to be reviewed
      15674201 PBH P 74946/2 PIP -H- 25*
      15674901 PBH P 7603/2 PIP -H- 275
      15675401 PBH P 7598/2 PIP -H- 375
      15748701 PBH G 72223/4 BUP -H- to be reviewed
      15770401 PWI 7491 WHP -H- 900
      15803801 PBH PTE 11058/2 ST ORE -H- 400
      15803901 PBH PTE 4633 BUE -H- 25
      15849401 PBH L 7454/2 BKP -H- 2800
      15853401 PBH P 7628/2 BUP -H- 25*
      0
    4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      sans VBA avec une matricielle

      =SOMME(SI((NON(ESTERREUR(TROUVE("*";A1:A15))));CNUM(GAUCHE(A1:A15;TROUVE("*";A1:A15)-1))))

      Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule; Excel encadre alors automatiquement la formule par des {}
      renvoie 225 avec tes données
      0
    5. jean_phi28 Messages postés 3 Statut Membre
       
      J ai excel en anglais,
      Encore Merci
      0
  2. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    Pourquoi as-tu intitulé ta discussion "Somme des cellules jaunes", alors que ton exemple contient des chiffres accompagnés d'une étoile (ce qui les transforme en textes et empêche tout calcul direct) ?
    -2
    1. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      et comme on le demande à tous ceux qui posent des questions : Envoie-nous un lien pour qu'on puisse ouvrir ton fichier !
      0
    2. Jean_phi28
       
      Bonjour Raymond,

      J ai utilise cette intitule car les cellules que je veux additionner (celle contenant des etoiles) sont aussi de couleurs jaune. Mais j ai pense que ce n etait pas pertienent.
      0
    3. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      Alors
      - utiliser la colonne D pour insérer un caractère distinctif signalant les nombres à totaliser ;
      - éviter l'étoile, le slash, le signe égal, le point d'interrogation ; leur préférer la lettre x ;
      - saisir en C25 la formule =SOMME.SI(D$1 :D$23;"x";C$1:C$23) pour totaliser les cellules concernées ;
      - utiliser la Mise en Forme Conditionnelle pour qu'Excel remplisse en jaune les cellules à gauche de "x".
      https://www.cjoint.com/?AGoqTyQWQzb
      0