Visual basic Zapfen Rechner

Hallo,
Für Zapfen Rechner
Also brauche eine Vervollständigung meines Codes für VB Das Programm soll das Ergebnis in einer textbox Rechtsbündig ausgeben. Also

Ausgangszahl wird in Ein Textfeld eingegeben (Text1)
Dann auf Command ausrechnen!
In einer Textbox wird das Ergebnis rechtsbündig ausgegeben.
z.b
Textbox
__________________________________________________________________
12
36
usw...
__________________________________________________________________

Code:
MsgBox "Das Ergebnis ist " & Text1 * 2

Also wie gehts weiter so vielleicht??
MsgBox "Das Ergebnis ist " & Text1 * 2 & * 3 ?????
 
Ich hab zwar den Begriff 'Zapfenrechner' noch nie gehöhrt,
aber ich denk mal der Code sollte so aussehen^^

Code:
    Dim Zahl As Integer
    Zahl = Text1.Text
    MsgBox Zahl * 2 & vbNewLine & _
           Zahl * 3 & vbNewLine & _
           Zahl * 4 & vbNewLine & _
           Zahl * 5 & vbNewLine & _
           Zahl * 6 & vbNewLine & _
           Zahl * 7 & vbNewLine & _
           Zahl * 8 & vbNewLine & _
           Zahl * 9 & vbNewLine & _
           Zahl * 10 & vbNewLine
 
Hä ich kapier das nicht! Bei mir steht immer Overflow = Überlauf

Code:

Private Sub Command1_Click()
Dim Zahl As Integer
Zahl = Text1.Text
MsgBox Zahl * 2 & vbNewLine & _
Zahl * 2 * 3 & vbNewLine & _
Zahl * 2 * 3 * 4 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 & vbNewLine

End Sub

Hifle ich ersticke was soll ich ohne euch machen????????????
 
Original von HackerNT
Hä ich kapier das nicht! Bei mir steht immer Overflow = Überlauf

Danke für die Übersetzung! ;-)

Der Fehler liegt in der Defintion von 'Zahl'. Verwende anstelle von INTEGER lieber LONG (4 Byte) oder DOUBLE (8 Byte). Sofern die Zahl sogar diese Defintion zum überlaufen bringt, verwende VARIANT (16 Byte).

Gruzz Local
 
Also wenn ich dann zum Dividieren komme gehts nicht mehr weiter!
also habe folgendes ohne Probleme geschaft (bis jetzt).
---------------------------------------------------------------------------
MsgBox Zahl * 2 & vbNewLine & _
Zahl * 2 * 3 & vbNewLine & _
Zahl * 2 * 3 * 4 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 & vbNewLine
---------------------------------------------------------------------------

aber weiter gehts nicht mehr:

__________________________________________________________
MsgBox Zahl * 2 & vbNewLine & _
Zahl * 2 * 3 & vbNewLine & _
Zahl * 2 * 3 * 4 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 & vbNewLine & _
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 & vbNewLine &_
Ab hier gehts nicht mehr
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 / 2 & vbNewLine &_
Zahl * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 / 2 / 3 & vbNewLine

weiter bis ich wieder zur ausgangszahl komme / 4 /5 .....
könnt ihr mir weiter Helfen weis nicht was heute los ist schaff heute nen schei?dre?k hab probiert mit double und so weiter komm ich nur bis zum ende der * schleife
 
Edit:

Okay, hab endlich begriffen was so ein Zapfenrechner tun soll xD
Allerdings kannst du das dann nich in einer MsgBox ausgeben.
Zumindest nicht in einer einzelnen.
Oder du müsstest die Rechnungen durchführen, in Variablen schreiben
und dann in einer MsgBox ausgeben.

1. Möglichkeit (2 Textboxen)

Code:
Private Sub Command1_Click()
    Dim Zahl As Long
    Zahl = Text1.Text
    For i = 2 To 9
        Text2.Text = Text2.Text & (Zahl * i) & vbNewLine
        Zahl = Zahl * i
    Next i
    For i = 2 To 9
        Text2.Text = Text2.Text & (Zahl / i) & vbNewLine
        Zahl = Zahl / i
    Next i
End Sub

2. Möglichkeit (Array+MsgBox)

Code:
Private Sub Command1_Click()
    Dim Zahl As Long
    Dim Wert(15) As Long
    Zahl = Text1.Text
    For i = 2 To 9
        Wert(i - 2) = (Zahl * i)
        Zahl = Zahl * i
    Next i
    For i = 2 To 9
        Wert(i + 6) = (Zahl / i)
        Zahl = Zahl / i
    Next i
    MsgBox Wert(0) & vbNewLine & _
           Wert(1) & vbNewLine & _
           Wert(2) & vbNewLine & _
           Wert(3) & vbNewLine & _
           Wert(4) & vbNewLine & _
           Wert(5) & vbNewLine & _
           Wert(6) & vbNewLine & _
           Wert(7) & vbNewLine & _
           Wert(8) & vbNewLine & _
           Wert(9) & vbNewLine & _
           Wert(10) & vbNewLine & _
           Wert(11) & vbNewLine & _
           Wert(12) & vbNewLine & _
           Wert(13) & vbNewLine & _
           Wert(14) & vbNewLine & _
           Wert(15) & vbNewLine
End Sub
 
Zurück
Oben