Extration de nombre (d'un résultat) dans une autre cellule

Résolu
DamTab -  
 DamTab -
Bonjour,

Je voudrais faire une formule Exel pour extraire un résultat dans une cellule, et je n'ai qu'un dénominateur connu au cellule qui est de récupérer le nombre qui est après les deux points, le problème c'est que dans la cellule je peux avoir 1,2 ou 3 donner à récupérer...

exemple :

//// 3512 : 258632 //// 235 : 556 //// la cellule doit être le résultat de l'addition de 258632+556
/////////// 235 : 55886////// La cellule doit être 55886
25 : 25 ///////////// 25896 : 58 //// La cellule doit être le résultat de l'addition de 25+58

Fichier :

https://www.transfernow.net/GxkzKF042020

MERCI !

Configuration: Windows / Firefox 74.0

2 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    faisable par formule puisque limité à 3 valeurs, mais j'ai fait le fainéant avec une fonction personnalisée.
    A mettre dans un module standard :
    Function addExtrait(ch As String) As Double
    Dim tmp, i As Long
    tmp = Split(ch, " ")
    For i = 1 To UBound(tmp)
    If tmp(i - 1) = ":" Then addExtrait = addExtrait + Val(tmp(i))
    Next i
    End Function

    https://www.cjoint.com/c/JDjlhLyxu7V
    eric

    0
    1. DamTab
       
      Cette formule me va très bien.

      Merci beaucoup Eric !!!
      0
  2. DamTab
     
    Est il possible de rajouter une condition à cette formule....
    Car dans certain cas j'ai une date juste avant les : et dans ce car je ne veux pas prendre le chiffre qui suit.

    Exemple :

    25 : 25 ///// 25896 : 65 //// 258 : 54 ///// 258 : 54 (résultat = 198)
    25 : 25 ///////////// 25896 : 65 //// 258 : 54 ///// 2020-02-02 : 54 // (résultat = 198)

    Le résultat de la 2eme ligne du coup doit être 144 car je ne veux pas prendre le chiffre après la date

    Merci
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bien sûr :
      Function addExtrait(ch As String) As Double
          Dim tmp, i As Long
          tmp = Split(ch, " ")
          For i = 2 To UBound(tmp)
              If tmp(i - 1) = ":" And Not tmp(i - 2) Like "####-##-##" Then addExtrait = addExtrait + Val(tmp(i))
          Next i
      End Function

      eric
      0
      1. DamTab > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci Mr Eriiic !
        0