Zur einstelligen Berechnung

Zur einstelligen Berechnung

Bitte helfen Sie mir, in Excel die Funktionen in der Ergebniszelle zu finden, die der Berechnung folgen.

ID     Result  Calculation  
12345  6       >>1+2+3+4+5=15   >>1+5   =6  
21436  6       >>2x1x4x3x6=144  >>1x4x4 = 16 >>1x6  =6  
12345  2       >>1x2x3x4x5=120  >>1x2   =2    Omit zero digit

Antwort1

Wenn Sie keinen schrecklich komplexen Code möchten, müssen Sie ihn zunächst in ein Makro einfügen. Wenn Sie versuchen würden, ihn in eine Zelle einzufügen, wäre er wahrscheinlich über 200 Zeichen lang und unmöglich zu debuggen.

Etwas wie das:

assuming var "in" contains the string

accumulator=0
for a=1 to len(in)
accumulator=accumulator*value(mid(trim(in),a,1))
next a

sum=0
while accumulator>9
for b=0 to len(accumulator)
sum=sum*value(mid(trim(accumulator),a,1))
next b
accumulator=sum
sum=0
wend

Notiz: Sie wechseln von der Multiplikation zur Addition auf der Grundlage unbekannter Kriterien, daher konnte ich hierfür keinen Code erstellen.

Antwort2

Zur Addition können Sie gemäß Zeile 1 wie folgt auf eine einzelne Ziffer reduzieren:

=MOD(A2-1,9)+1

aber Sie möchten dasselbe auch für die Multiplikation tun? Wie Cybernard sagt, verstehe ich nicht, wie Sie bestimmen, welche Sie verwenden sollen. Versuchen Sie also für eine separate Multiplikationsformel, bei der Sie höchstens 3 Iterationen und bis zu 10 Ziffern im Original annehmen, diese Formel

=PRODUCT(SUBSTITUTE((0&MID(PRODUCT(SUBSTITUTE((0&MID(PRODUCT(SUBSTITUTE((0&MID(A2,ROW(INDIRECT("1:10")),1))+0,0,1)+0),ROW(INDIRECT("1:10")),1))+0,0,1)+0),ROW(INDIRECT("1:10")),1))+0,0,1)+0)

bestätigt mit CTRL+ SHIFT+ENTER

verwandte Informationen