calcul un peu spécial sous excel 200

  • Initiateur de la discussion jeff
  • Date de début
J

jeff

Guest
Voila je voudrait faire un calcul assez spécial ,

en claire je voudrait que dans une cellule , il y ait marquer par exemple, 25+35+65 et que dans la cellule d'a coter, la somme de se calcul soit calculé automatiquement, et je ne trouve pas de fonction qu'il le fasse sous excel 2000 :(

si qq'un pouvais m'aider sa serai bien :)

merci d'avance
 
A

andré

Guest
Salut jeff,

Patience, ne crois que tu sois oublié !

Personnellement j'ai essayé divers trucs, mais sans y parvenir.
J'ai mélangé les CNUM, SUBSTITUE, CONCATENER et "en veux-tu, en voilà" mais sans résultat.

Je ne désespère pas.
Ândré.
 
M

michel

Guest
bonjour André , bonjour Jeff

la macro ci-dessous permet d'extraire les valeurs numeriques de la cellule A1 et d'en faire l'addition


Sub SommeDansCelluleAlphaNumerique()
Dim i As Byte
Dim Cible As String
Dim Nombre As Double, Total As Double

Cible = Range("A1") 'recuperation valeur cellule
Cible = Application.Substitute(Cible, ",", ".") 'pour que fonction Val puisse reconnaitre les decimales
'Cible = Application.Substitute(Cible, " ", "x") ' pour gerer deux nombres qui se suivent
For i = 1 To Len(Cible)
If IsNumeric(Mid(Cible, i, 1)) Then
Nombre = Val(Mid(Cible, i, Len(Cible) - i + 1))
MsgBox Nombre
Total = Total + Nombre
i = i + Len(Str(Nombre)) - 1
End If
Next

MsgBox "Le total de la cellule : " & Total
End Sub


bonne soiree
michel
MichelXld
 
D

Dugenou

Guest
avec des formules :
s'il y a 4 chiffres dans la cellule c5 (du genre 1+56+589+5) quelque soit la longueur des chiffres :
=CNUM(GAUCHE(C5;CHERCHE("+";C5)-1))+cnum(STXT(C5;CHERCHE("+";C5)+1;CHERCHE("+";C5;CHERCHE("+";C5)+1)-CHERCHE("+";C5)-1)+STXT($C$5;CHERCHE("+";C5;CHERCHE("+";C5)+1)+1;CHERCHE("+";C5;CHERCHE("+";C5)+CHERCHE("+";C5;CHERCHE("+";C5)+1)+1)-CHERCHE("+";C5;CHERCHE("+";C5)+1)-1))+cnum(STXT($C$5;CHERCHE("+";C5;CHERCHE("+";C5)+CHERCHE("+";C5;CHERCHE("+";C5)+1)+1)+1;NBCAR(C5)-CHERCHE("+";C5;CHERCHE("+";C5)+CHERCHE("+";C5;CHERCHE("+";C5)+1)+1)))

la même pour 3 chiffres :
=CNUM(GAUCHE(C5;CHERCHE("+";C5)-1))+CNUM(STXT(C5;CHERCHE("+";C5)+1;CHERCHE("+";C5;CHERCHE("+";C5)+1)-CHERCHE("+";C5)-1))+CNUM(STXT(C5;CHERCHE("+";C5;CHERCHE("+";C5)+1)+1;NBCAR(C5)-CHERCHE("+";C5;CHERCHE("+";C5)+1)))

je me suis bien amusé !
 
M

Mytå

Guest
Bonsoir le forum

Pourqoui pas une petite fonction du style

Function Calcul(Cell As Range)
Calcul = Evaluate("=" & Cell.Value)
End Function

ou si des décimales

Function Calcul(Cell As Range)
Calcul = Evaluate("=" & Application.Substitute(Cell, ",", "."))
End Function

Mytå
 
A

andré

Guest
Salut Hervé,

Mais où trouves-tu donc cette fonction EVAL() ?
Même l'aide Microsoft ne la connaît pas.
J'ai vérifié sous Fonctions 2000 (de Ti) et rien !

Enlève-moi cette épine du pied, car cela m'intéresse bougrement.
Merci d'avance.

Ândré.
 
H

Hervé

Guest
salut andré

c'est une macro tirée de l'excellent morefun.xls que tu trouveras via ce lien :

<http://longre.free.fr/pages/telecharge>

j'espere que ce lien marchera (pas très bon en HTML je suis)

sinon recontacte moi

A+ tlm

Hervé
 
A

andré

Guest
Salut à vous,

Petite erreur de language, par "fonction" j'avais compris une fonction de formule, alors qu'en réalité il s'agit d'une fonction de VBA !

Comme quoi, une fonction peut en cacher une autre.

La procédure de Myta fonctionne très bien, j'avais espéré pouvoir le faire par une formule, dommage.

Ândré.
 

Discussions similaires

R
Réponses
5
Affichages
1 K
R
L
Réponses
6
Affichages
1 K
lartisan
L

Statistiques des forums

Discussions
312 393
Messages
2 088 006
Membres
103 695
dernier inscrit
acimi