Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Warum Overflow?

Forumthread: Warum Overflow?

Warum Overflow?
20.07.2022 23:10:49
Rolf
moin,
ich bearbeite eine eigentlich bedeutungslose Aufgabe: Welche der Zahlen ABCDE sind durch die umgekehrten Zahlen EDCBA restlos teilbar. Die Ziffern A bis E seien jeweils unterschiedliche Ziffern.
Ich wollte nun Schleifen bilden, um A bis E jeweils durchzutesten. Allerdings bekomme ich eine Fehlermeldung (Überlauf) bei der Berechnung der Kombination EDCBA (Rück). Warum?
Danke.
Rolf

Sub Spektrum()
Dim A As Integer
Dim B As Integer
Dim C As Integer, D As Integer, E As Integer
Dim Hin As Integer, Rück As Integer
For A = 1 To 9
For B = 0 To 9
If B = A Then GoTo errorB
For C = 0 To 9
If C = A Or C = B Then GoTo errorC
For D = 0 To 9
If D = A Or D = B Or D = C Then GoTo errorD
For E = 1 To 9
If E = A Or E = B Or E = C Or E = D Then GoTo errorE
Hin = 10000 * A + 1000 * B + 100 * C + 10 * D + E
Rück = 10000 * E + 1000 * D + 100 * C + 10 * B + A
If Hin Mod Rück = 0 Then
MsgBox Hin & ", " & Rück
End If
errorE:
Next E
E = 1
errorD:
Next D
D = 0
errorC:
Next C
C = 0
errorB:
Next B
B = 0
Next A
End Sub
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Warum Overflow?
21.07.2022 01:06:50
Mullit
Hallo,
deklarier mal alle Vars als Long:

Dim A As Long
Dim B As Long
Dim C As Long, D As Long, E As Long
Dim Hin As Long, Rück As Long
Gruß, Mullit
AW: Warum Overflow?
21.07.2022 06:19:44
RPP63
Moin!
Hin und Rück (man sollte übrigens keine Umlaute in VBA nutzen) können jeweils maximal 99.999 groß werden.
Ab 32.767 ist es Schluß mit dem Integer.
https://www.vbarchiv.net/commands/cmd_datentypen.html
Nimm für diese beiden Variablen Long, Double oder Variant (Long reicht).
Gruß Ralf
Anzeige
AW: Warum Overflow?
21.07.2022 07:45:02
Rolf
läuft! Danke!
Ich dachte, dass integer einen größeren Zahlenumfang hat.
Rolf
AW: Warum Overflow?
21.07.2022 08:24:43
Daniel
Hi
Anzahl möglicher Zahlen für:
- byte: 2^8
- integer: 2^16
- long: 2^32
- long long: 2^64
wobei der Zahlenraum mit Ausnahme von Byte positive und negative Zahlen umfasst, so dass sich der Wert für die größtmögliche Zahl noch halbiert
Anzeige
Kein VBA, sondern LET+LAMBDA (365, XLWeb)
21.07.2022 06:45:40
lupo1
=LET(
x;SEQUENZ(89999;;10000);
y;NACHZEILE(TEIL(x;SEQUENZ(;5;5;-1);1);LAMBDA(z;--TEXTVERKETTEN(;;z)));
z;WENN(REST(x;y);;x);
FILTER(z;z&gt0))

5 unterschiedliche Ziffern noch n. berücksichtigt
21.07.2022 07:12:02
lupo1
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige