Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1944to1948
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Grundrechenarten mit SEHR GROßEN ZAHLEN

Grundrechenarten mit SEHR GROßEN ZAHLEN
20.09.2023 03:23:53
LayD
Ich kenne mich mit Excel gut aus, mit VBA leider nicht! Vorab: ich kenne ein Add-On (in Form einer XLSM), mit dem ich positive und ganze Zahlen problemlos in den Grundrechenarten berechnen kann, bis zur maximalen Anzahl an Stellen in einer Zelle!

Allerdings bräuchte ich das auch für negative Zahlen und auch für reelle Zahlen! Es ist schön, wenn ich meinetwegen 456557757747*446376377563637 problemlos ausrechnen kann, aber 4536536/354263774484837 wird zum Problem, da mein Add-On nur die Ganzzahl ausspuckt und einen Rest, was mir da nichts bringt.

Ich bedanke mich für jedwede Hilfe. Auch für Fragen und Anregungen bitte schreiben.

Ach ja: für das Multiplizieren habe ich es einmal mit Stellenverschiebung versucht, das funktioniert sogar ziemlich gut, vielleicht geht ja dort ein Weg zum Ziel.

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mehrere Links
20.09.2023 05:46:39
lupo1
uraltes Add-In Radzinski/Rendar
http://www.rendar.de/lzr.htm

LAMBDA maninweb
https://www.clever-excel-forum.de/Thread-Lambda-LNUM-SUM-um-grosse-Zahlen-in-Excel-zu-addieren
https://www.clever-excel-forum.de/Thread-Lambda-LNUM-PRODUCT-zur-Multiplikation-grosser-Zahlen-in-Excel
http://www.excel-ticker.de/in-excel-mit-sehr-grossen-zahlen-rechnen-teil-1-addition/ (dort die anderen Grundrechenarten auch als Links)

Im Netz berechnen:
https://www.wolframalpha.com/

selbst weiter googeln
Anzeige
Nachbemerkung zu maninwebs schönen LNUM-Erklärungen
20.09.2023 06:09:16
lupo1
Rekursive LAMBDA-Funktionen (die maninweb für große Zahlen verwendet) kann man auch ohne Benennung im Namensmanager direkt in einem LET definieren. Das macht die spontane Verwendung einfacher bzw. überhaupt erst möglich. Außerdem kann man nur dann (derzeit) auch eine rekursive Funktion überhaupt erst neu in XLWeb eingeben. Denn dort kann man bekanntlich keine Formeln als Namen definieren, sondern nur entsprechende Dateien mit solchen Namen öffnen (was einem beim Selbst-Experimentieren natürlich nicht viel hilft, sondern XL365 voraussetzt), jedoch nicht ändern.

Ein Beispiel findet man hier:
https://www.clever-excel-forum.de/Thread-LAMBDA-COMBINATORICS-LIST-Permutationen-Kombinationen-Variationen-in-1-Formel
Es werden gleich drei verschiedene Rekursionen ohne namensdefinierte Formeln verwendet.
Anzeige
AW: mehrere Links
20.09.2023 12:59:49
LayD
Die Beiträge bei excel-ticker kenne ich, diese sind aber nur für ganze Zahlen. wolfram-alpha bringt bei großen Zahlenkolonnen nichts.
Den anderen Link sehe ich mir gern an. Danke.
AW: mehrere Links
20.09.2023 19:16:33
LayD
Ich habe es prima hinbekommen mit dem Rendar-Addin. Das paßt soweit ausgezeichnet.

Wie kann ich denn, nach Formeleingabe, die "ausgespuckte" Zahl "handlich" formatieren, also meinetwegen
aus

=lr_div(B14;1,04020204;20)

bekomme ich

1912205085658166946105969951,76052529179812029593

aber

1.912.205.085.658.166.946.105.969.951,76052529179812029593

wäre viel handlicher. Die Zelle in TEXT formatieren geht nicht, in ZAHL auch nicht. STANDARD ermöglicht die Berechnung
der Formel, einwandfrei, aber wie mache ich die Formatierung danach? Schlauch, da stehe ich gerade, und zwar drauf.
Anzeige
Du musst nun mit allen Sonderwünschen selbst ran
20.09.2023 21:17:36
lupo1
... das Ergebnis einer Operation von langen Zahlen ist in Excel Text und somit nicht zahlenformatierbar. Daher musst Du da selbst ran, z.B. mit VBA oder auch mit LET.

Dass man lange Zahlen nur als Ganzzahl operieren kann, halte ich für ein Gerücht. Wandle in Ganzzahlen um (= Dez.zeichen weg), operiere, und skaliere zurück: "Bin ich jetzt drin, oder was! Das war ja einfach!"
AW: Du musst nun mit allen Sonderwünschen selbst ran
20.09.2023 21:22:16
LayD
Nur dass ich von VBA keine Ahnung habe.
AW: Du musst nun mit allen Sonderwünschen selbst ran
21.09.2023 04:38:56
LayD
Falls jemand noch eine Idee hat, vielen Dank. Ich habe jetzt einige Stunden probiert, aber es klappt nicht.
Grosse Zahlen (max. 28 Stellen)
21.09.2023 10:58:31
Sigi.21
Hallo LayD,

in VBA gibt es den Datentyp CDec, der Zahlen bis max. 28 Stellen darstellen kann.
Da Excel nur 15 Stellen anzeigen kann, müssen große Zahlen als Text(!) eingeben werden. Damit lassen sich auch die Grundrechenarten darstellen.
(s. Mappe)

Gruß Sigi
https://www.herber.de/bbs/user/163016.xlsm
Anzeige
AW: Grosse Zahlen (max. 28 Stellen)
21.09.2023 15:36:08
LayD
Das ist wirklich gut, vielen Dank. Die Stellen sind auf 28 begrenzt?

Die Formatierung eines Ergebnisses aus einer Berechnung kann man nachträglich, also das Ergebnis meine ich,
nicht umformen? Trennung durch Punkte, Stellenanzahl etc.?

Hm, VBA, das fehlt mir schon noch sehr viel.
AW: Grosse Zahlen (max. 28 Stellen)
21.09.2023 16:43:52
Sigi.21
Hallo LayD,

ja, CDec ist auf 28 Stellen begrenzt.

Zum Format deines Ergebnisses:
Excel kann nur Zahlen im Sinne von "Excelzahl" formatieren. Dein Erg. aus dem AddIn ist ja TEXT(!), da versagt eine Excelformatierung.
Man kann aber den "Text" wiederum mit einer VBA-Fkt. bearbeiten.(s. Mappe)

Gruß Sigi

https://www.herber.de/bbs/user/163022.xlsm
Anzeige
AW: Grosse Zahlen (max. 28 Stellen)
21.09.2023 17:02:41
LayD
DAS trifft genau den Nerv! 1000 Dank, Sie haben mir sehr geholfen!
AW: Grosse Zahlen (max. 28 Stellen)
21.09.2023 18:36:19
LayD
ach so, lieber Sigi, ginge das auch andersrum? Also eine Zahl, die die Punkte hat, wieder in die Ausgangsform?
AW: Grosse Zahlen (max. 28 Stellen)
26.09.2023 18:02:28
LayD
Ich denke, es funktioniert ähnlich wie die vorherige Formel?!
Hier noch COMBINATORICS_LIST aus dem Bsp. ohne Namen
20.09.2023 06:16:51
lupo1
=LAMBDA(n;[k];[c];LET(
z;WENN(c;c;WENN(ISTZAHL(--n)*(LÄNGE(n)=1);1;WENN(k;3;2)));
q;LAMBDA(q;n;ZUSPALTE(WENN(n2;1;ERSETZEN(q(q;n-1);SEQUENZ(;n);0;n))));
p;LAMBDA(p;n;LET(t;LÄNGE(n);r;RECHTS(n);EINDEUTIG(ZUSPALTE(WENN(t2;r;ERSETZEN(p(p;LINKS(n;t-1));SEQUENZ(;t);0;r))))));
v;LAMBDA(v;x;k;WENN(k>1;ZUSPALTE(v(v;x;k-1)&MTRANS(x));x));
SORTIEREN(WAHL(z;
q(q;n);
p(p;n);
LET(x;EINDEUTIG(LINKS(p(p;n);k));FILTER(x;NACHZEILE(x;LAMBDA(a;TEXTKETTE(SORTIEREN(TEIL(a;SEQUENZ(;k);1);1;1;1))=a))));
EINDEUTIG(LINKS(p(p;n);k));
v(v;EINDEUTIG(TEIL(n;SEQUENZ(LÄNGE(n));1));k)))))("A1B3C01";3;5)


Die LAMBDA-Funktion COMBINATORICS_LIST (in welcher neben anderem auch die 3 Rekursionen definiert werden) selbst kann also ebenfalls ohne Benennung verwendet werden, wenn man ihre Argumente (fett) hinten einfach anhängt. So erlangt man auch in XLWeb unbegrenzte Freiheit der Änderung.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige