[Résolu] Calculer la somme des chiffres d'un nombre

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
ndubau
Fraîchement OOthentifié
Messages : 4
Inscription : 27 janv. 2007 13:11

[Résolu] Calculer la somme des chiffres d'un nombre

Message par ndubau »

Bonjour,

Code : Tout sélectionner

=SOMME(CNUM(STXT(ABS(A1);LIGNE(INDIRECT("1:"&NBCAR(ABS(A1))));1)))
Dans Excel la formule ci-dessus retourne la somme des chiffres qui composent un nombre inscrit en A1 (par ex si en A1 j'ai 258 la formule renverra 15)
Ouverte dans OO2 Calc, et bien que toutes les fonctions existent, une erreur 502 est renvoyée.
Qui peut m'ouvrir les yeux ?
Merci
Noël
Dernière modification par ndubau le 27 janv. 2007 15:06, modifié 1 fois.
OO2.0 / Windows XP SP2
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10007
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

Bonjour et bienvenue,

A priori, 3 choses :
1) Ta signature n'est pas précise (voir http://user.services.openoffice.org/fr/ ... 41.html#41 jusqu'au bout)
2) Ta fonction INDIRECT ne comprends pas de colonne
3) Il s'agit là d'une fonction matricielle (voir tuto Les matrices)

Donc, je te propose :

Code : Tout sélectionner

=SOMME(CNUM(STXT(ABS(A1);LIGNE(INDIRECT("A1:A"&NBCAR(ABS(A1)-1)));1)))
A valider par Ctrl+Maj+Entrée (à ce moment là, Calc te rajoute des accolades autour de ta formule).

A +

EDIT : Voir http://user.services.openoffice.org/fr/ ... html#18488 pour la procédure pour mettre [Résolu] dans ton titre, si tel est le cas :wink:

EDIT 2 : en me relisant, je me rends compte que je suis (un peu) à côté de la question ; si ta formule marche sous Excel, il est probable quelle fasse référence à un autre classeur. Comme Excel et Calc ne gère pas de façon identique les chemins de fichier, ceux-ci ont peut-être été "zappés" à la conversion, peut-être ton soucis vient de là...
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
ndubau
Fraîchement OOthentifié
Messages : 4
Inscription : 27 janv. 2007 13:11

Message par ndubau »

Bonjour,
Merci de ta réponse.
a) je viens d'ajouter les précisions de profil
b) la fonction INDIRECT était telle qu'issue d'Excel...
c) pour la validation de matricielle c'était OK
...
d) je cours placer la balise [Résolu]
Bon week-end
Noël
OO2.0 / Windows XP SP2
ThierryM
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 439
Inscription : 26 nov. 2006 11:29
Localisation : Les Corbières

Re: [Résolu] Calculer la somme des chiffres d'un nombre

Message par ThierryM »

Bonjour,
Juste un complément d'information concernant le calcul de la somme des chiffres d'une cellule car la formule donnée ci-dessus ne fonctionne que pour un nombre dans la cellule A1.
Pour une cellule en C10, il faudrait utiliser ceci :

Code : Tout sélectionner

=SOMME(CNUM(STXT(ABS(C10);LIGNE(INDIRECT("A1:A"&NBCAR(ABS(C10)-1)));1)))
Pour une autre cellule par exemple en B2, il faudrait utiliser ceci :

Code : Tout sélectionner

=SOMME(CNUM(STXT(ABS(B2);LIGNE(INDIRECT("A1:A"&NBCAR(ABS(B2)-1)));1)))
N'oubliez pas de valider avec la combinaison de touches CTRL+MAJ+Entrée afin que Calc rajoute les accolades { } indiquant un calcul matriciel !
Il ne faut pas changer la partie "A1:A" qui suit la fonction INDIRECT car cette partie ne correspond pas à une adresse de cellule.
Bref les coordonnées de la cellule sur laquelle on travaille sont celles qui sont dans la fonction ABS().

Info pour les modos : il ne s'agit pas d'un déterrage de fil mais juste d'un apport supplémentaire dans le but de ne pas éclater l'information dans différents fils (ce qui compliquerait la tâche de ceux qui auraient besoin de cette info).
Cordialement,

Thierry
LibreOffice Version: 24.8.4.2 / Linux Mint Mate Edition 21.3 / Pourquoi privilégier les formats de fichiers ouverts ?