Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 (RESOLU) Choisir entre deux valeurs différentes dans une même cellule

Jinans

XLDnaute Nouveau
Bonjour tous le monde,

Je n'arrive pas à trouver la formule qui convient, je vous explique.
J'utilise la formule suivante dans la cellule R14 : =SI(R13>9;STXT(R13;1;1)+STXT(R13;2;1);"") qui fonctionne très bien.
Mais parfois et en fonction du résultat, la cellule R13, peut me renvoyer non pas deux chiffres, mais trois, ce qui me donne, =SI(R13>9;STXT(R13;1;1)+STXT(R13;2;1)+STXT(R13;3;1);""), jusque la tout va bien, comment faire pour avoir ces deux formules en condition.
Mais il faut que la cellule R14, me renvoi un résultat, que la cellule R13 affiche deux ou trois chiffres aléatoirement, j'avoue ne pas trouvé de quelle manière faire, je suis débutant, et je calle sur ce coup la, j'ai essayé avec la fonction OU, mais je maitrise pas.

En vous remerciant,
 

soan

XLDnaute Barbatruc
Inactif
@Jinans

c'est pour faire des réductions numérologiques de nombre en fait

dans ce cas, il suffit d'utiliser cette formule en R14 : =MOD(R13;9)

ça fait la somme des chiffres du nombre de R13, que ce nombre soit à 1 seul chiffre, 2 chiffres, ou 3 chiffres ; MOD est l'abréviation de MODULO ; ici, ça calcule le reste de la division de R13 / 9.​

soan
 

Staple1600

XLDnaute Barbatruc
Re

=>Jinans
Ne cherche plus : j'ai mis un lien dans le message#13


=>soan
Je parlais des formules
Quand je vois un + dans une formule Excel, bah instinctivement, je pense addition

Comme en plus ici, il s'agit de réduction théosophique, pas besoin d'utiliser de fonctions Texte, non ?
 

Jinans

XLDnaute Nouveau
Merci beaucoup, ça fonctionne super, je suis aller voir ton lien pour la formule de réduction théosophique, et je l'ai appliquée à la cellule R14 : =SI(ET(R13 <> ""; R13 <> 0); SI(MOD(R13; 9) = 0; 9; MOD(R13; 9)); SI(R13 = 0; 0; "")).

Je titille, mais le problème, est que la formule me réduit complétement le nombre d'origine, exemple avec le nombre 75, j'obtient 3, ce qui est correct, mais je voudrais obtenir par exemple, 75/12/3, étalé bien sur sur trois cellules, est-ce possible?, merci
 

Jinans

XLDnaute Nouveau
ça fonctionne sans la fonction texte en effet, avec la nouvelle formule
 

soan

XLDnaute Barbatruc
Inactif
@Jinans


comme au paragraphe situé au-dessus tu as écrit « formule de réduction théosophique », ta question est peut-être pour Staple1600 plutôt que pour moi ? si c'est pour moi, je n'ai pas de réponse là-dessus car MOD() calcule le résultat final ; je ne connais pas de moyen pour faire en sorte que MOD() calcule des résultats intermédiaires ; donc perso, j'utiliserais la « méthode brute » :

1) pour 75 : 7 + 5 = 12
2) pour 12 : 1 + 2 = 3

c'est-à-dire que des additions à chaque fois, pour le nombre de chiffres du nombre sur lequel on se base.​

soan
 

Jinans

XLDnaute Nouveau
Question pour l'un ou l'autre, merci à vous deux en tout cas pour votre aide, pour la réduction intermédiaire je vais me débrouiller, sur les autres postes clés j'utilise la fonction STXT, qui me va bien, car ça ne dépasse jamais 99. Je vais avec la méthode brute.
 

soan

XLDnaute Barbatruc
Inactif
@Staple1600

ah oui, j'ai vu ton lien, et je l'ai suivi ; il y a notamment :

* post #25 de smcj : « sauf si le reste vaut 0, alors la racine vaut 9 »

* post #26 de Modeste geedee, sa formule (pas la mienne) :

=SIERREUR(MAX(MOD(A1;9);9*(MOD(A1;9)=0));"?")

soan
 

vgendron

XLDnaute Barbatruc
Hello

avec un fonction personalisée pour le fun
VB:
Public Function reduction(target As String) As Integer

reduction = 0
Do
    If reduction <> 0 Then target = reduction: reduction = 0
    For i = 1 To Len(target)
        reduction = reduction + Mid(target, i, 1)
    Next i
Loop Until reduction <= 9
End Function
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…