Moinsen,
ich noch nen visual basic anfänger und wenn ich folgendes programm ausführen will bekomme ich immer den "Laufzeitfehler 13 : Typen unverträglich"
hier ist der code:
______
Private Sub Command1_Click()
Dim a As Long, b As Long, c As Long
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
If " ((b) ^ 2) - (4 * (a) * ( c )) " < 0 Then
MsgBox "Sorry, der Wert unter der Wurzel ist kleiner als Null"
ElseIf " ((b) ^ 2) - (4 * (a) * ( c )) " >= 0 Then
Call berechnen
End If
End Sub
_______
Private Sub berechnen()
Dim a As Long, b As Long, c As Long
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
Form1.Cls
Form1.CurrentX = 3150
Form1.CurrentY = 1500
Form1.FontSize = 12
Form1.ForeColor = &H80000014
Form1.FontBold = True
Form1.Print "X1 ist " & Format$((-b) + (((b) ^ 2) - (4 * (a) * ( c ))) ^ (1 / 2)) / (2 * (a)) & " "
End Sub
_______
ich möchte, dass wenn ich auf command1 klicke und dieser wert ist "((b) ^ 2) - (4 * (a) * ( c ))" ist kleiner als null soll er die MsgBox laden und wenn der wert größer als null ist soll er berechnen ausführen.
vielleicht kann mir ja jemand helfen?
thx schon mal
Seite 1 von 1
Vb, Laufzeitfehler 13
Anzeige
#2
geschrieben 25. Mai 2005 - 19:46
Änder auf jeden Fall mal:
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
in
a = Clng(Text1.Text)
b = Clng(Text2.Text)
c = Clng(Text3.Text)
Dann werden die Werte in den Textfeldern ordentlich in Long-Werte umgenwandelt, da a-c auch longwerte sind.
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
in
a = Clng(Text1.Text)
b = Clng(Text2.Text)
c = Clng(Text3.Text)
Dann werden die Werte in den Textfeldern ordentlich in Long-Werte umgenwandelt, da a-c auch longwerte sind.
#3
geschrieben 25. Mai 2005 - 20:21
thx hat sich erledigt, es lag einfach an den Anführungszeichen beim "If-Term" ^^, man musste sie einfach weglassen und schon gings
Edit: Weis jemand zufällig was man in visual basic verändern muss damit später in der EXE datei die fenstergröße nicht mehr veränderbar ist?
Edit: Weis jemand zufällig was man in visual basic verändern muss damit später in der EXE datei die fenstergröße nicht mehr veränderbar ist?
Dieser Beitrag wurde von metallica_rulez bearbeitet: 25. Mai 2005 - 20:37
#4
geschrieben 25. Mai 2005 - 21:26
Eigenschaft des Hauptformulares: "Borderstyle" auf "Fest einfach"
#5
geschrieben 25. Mai 2005 - 21:43
Frage mich gerade, wie du eh drauf kamst, dass um einen numerischen Vergleich Gleichheitszeichen müssen, in welcher Sprache gabs denn sowas je ?
Damit die Fenstergrösse nicht veränderbar ist, muss die Border-Eigenschaft auf "Fixed" gestellt werden (kann anders heissen, aber so ähnlich auf jeden Fall).
Damit die Fenstergrösse nicht veränderbar ist, muss die Border-Eigenschaft auf "Fixed" gestellt werden (kann anders heissen, aber so ähnlich auf jeden Fall).
Thema verteilen:
Seite 1 von 1