OVH Cloud OVH Cloud

Calcul nombre d'éléments ??

13 réponses
Avatar
john
Bonjour

dans une cellule j'ai une somme sous la forme

=29+38+23+30+35+25+30+35+30


Existe-t-il une formule directe pour compter le nombre d'elements?

dans l'exemple il y a 9 nombres


merci

10 réponses

1 2
Avatar
FxM
Bonjour,

Formule directe, je ne sais pas mais celle-ci semble aller :

Public Function nbelem(cellule)
cel = cellule.Formula
cel2 = cel
cel2 = Replace(cel2, "+", "")
nbelem = Len(cel) - Len(cel2) + 1
End Function

Usage :
=nbelem(A3) si ta formule est en A3

@+
FxM



Bonjour

dans une cellule j'ai une somme sous la forme

)+38+23+30+35+25+30+35+30


Existe-t-il une formule directe pour compter le nombre d'elements?

dans l'exemple il y a 9 nombres


merci


Avatar
john
merci cela fonctionne

si la cellule est vide il affiche 1
je pense qu'il suffit d'une condition SI( pour
corriger le tir ?
Avatar
john
merci cela fonctionne
J'ai juste rajouter un SI pour le test d'une cellule vide

Bon week-end
Avatar
AV
Dans un module ordinaire

Function NBREdeNBRE(cell As Range)
x = cell.Formula
On Error Resume Next
For i = 1 To Len(x)
If Asc(Mid(x, i + 1, 1)) < 48 Or Asc(Mid(x, i + 1, 1)) > 57 Then z = z + 1
Next
NBREdeNBRE = z
End Function

Dans la feuille :
=NBREdeNBRE(A1)

AV
Avatar
FxM
merci cela fonctionne

si la cellule est vide il affiche 1
je pense qu'il suffit d'une condition SI( pour
corriger le tir ?


Volà qui ne fait pas partie de ton énoncé original :o)

Non testé :
Public Function nbelem(cellule)
if not isempty(cellule) then
cel = cellule.Formula
cel2 = cel
cel2 = Replace(cel2, "+", "")
nbelem = Len(cel) - Len(cel2) + 1
else
nbelem = "Vide !!"
end if
End Function

@+
FxM

Avatar
michdenis
Bonjour John,

Une autre possibilité pour ta fonction personnalisée ...

La fonction Split requiert une version excel 2000 ou plus récent ...
'-------------------
Public Function NbElements(Rg As Range)
NbElements = UBound(Split(Rg.Formula, "+")) + 1
End Function
'-------------------


Salutations!



"john" a écrit dans le message de news:417a20aa$0$1044$
Bonjour

dans une cellule j'ai une somme sous la forme

)+38+23+30+35+25+30+35+30


Existe-t-il une formule directe pour compter le nombre d'elements?

dans l'exemple il y a 9 nombres


merci
Avatar
john
merci à tous

Cela me sert pour totaliser mes sorties en VTT par mois
Avatar
AV
Cela me sert pour totaliser mes sorties en VTT par mois


Etrange...
Tu devrais adopter un mode de stockage des données un peu plus....conventionnel
:
Exemple les dates des sorties en colonne A et sur les cellules équivalentes en
colonne B, le kilométrage
A partir de ça vont s'ouvrir à toi des horizons insoupconnés...

AV

Avatar
john
Oui , effectivement ....
construire des tables avec un petit coup de Sql par dessus !

mais ayant donné, du temps de la vie active ...c'est beaucoup plus cool
maintenant
Avatar
Daniel.M
John,

La remarque d'AV n'a pas été comprise.

Pas besoin de 'tables' ni SQL, ni artillerie lourde, juste des données
structurées DANS Excel et une couple de formules SOMMEPROD et tu auras ton
bonheur.

Et ça ne prend pas plus de temps. :-)

Salutations,

Daniel M.

"john" wrote in message
news:417a9051$0$1046$
Oui , effectivement ....
construire des tables avec un petit coup de Sql par dessus !

mais ayant donné, du temps de la vie active ...c'est beaucoup plus cool
maintenant


1 2