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

Résolu/Fermé
DamTab - 9 avril 2020 à 11:33
 DamTab - 9 avril 2020 à 15:30
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

eriiic Messages postés 24597 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 22 septembre 2024 7 235
9 avril 2020 à 13:07
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
Cette formule me va très bien.

Merci beaucoup Eric !!!
0
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
eriiic Messages postés 24597 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 22 septembre 2024 7 235
9 avril 2020 à 15:09
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
DamTab > eriiic Messages postés 24597 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 22 septembre 2024
9 avril 2020 à 15:30
Merci Mr Eriiic !
0