helby Geschrieben 20. November 2006 Geschrieben 20. November 2006 Dim Guthaben_dagobert As Double = 100000000.0 Guthaben_dagobert = Guthaben_dagobert + CDbl(Geld.Text) // Fehlermeldung: Ungültige Konvertierung von der Zeichenfolge in Typ Double. wie kann ich das besser machen?? Zitieren
jasso Geschrieben 20. November 2006 Geschrieben 20. November 2006 was steht in "Geld.Text"? laud dieser definition tritt ein Laufzeitfehler auf wenn der wert nicht als numerischer Wert interpretiert werden kann. ich nehme auch an dass ein Leerstring einen Fehler wirft. lg jasso Zitieren
helby Geschrieben 20. November 2006 Autor Geschrieben 20. November 2006 da kann man einen wert eingeben zb. 250, 200,40 etc. als ich einen taschenrechner programmiert hatte hatte ich ebenfalls sowas geschrieben: dim s as double s=cdbl(text1.text)+cdbl(text2.text) und es hatte funktioniert... ne Idee worans liegt? Zitieren
jasso Geschrieben 20. November 2006 Geschrieben 20. November 2006 dass "Geld" ein texteingabefeld ist war anzunehmen. was ich meinte war ob du schon mal durchdebuggt und überprüft hast was zum zeitpunkt des fehlers in "Geld.text" drinsteht. wenn das z.B. aus versehen ein leerstring ist kann ich mir vorstellen dass der fehler daraus resultiert. lg jasso Zitieren
jasso Geschrieben 20. November 2006 Geschrieben 20. November 2006 ^^ ... und? ... schon mal versucht was anderes reinzuschreiben? lg jasso Zitieren
helby Geschrieben 20. November 2006 Autor Geschrieben 20. November 2006 wenn am anfang von mir ein wert in "text" eingegeben wird geht das. aber ich will dass der Anwender seine Zahl eingeben kann. wenn ich 123 eingebe, dann rechnet er erstmal mit der zahl. un danach kann der anwender was eingeben. das will ich aber nicht. gibts ein befehl für: Wert annehmen oder so? Zitieren
jasso Geschrieben 20. November 2006 Geschrieben 20. November 2006 du könntest die eingabe vor verwendung überprüfen (ob leerstring, ob mehr als ein komma, ob zeichen außer zahlen und kommas vorkommen). oder du fängst den fehler an der stelle speziell ab und gibst ihm die meldung aus dass er eine ungültige eingabe gemacht hat. lg jasso Zitieren
realgun Geschrieben 27. November 2006 Geschrieben 27. November 2006 Du kannst die Textbox doch mit "0" vorbelegen. Aber wie bereits von jasso beschrieben musst Du vor der Konvertierung in jedem Fall eine Sicherheitsabfrage über den Inhalt der TB machen (damit halt nur ein Komma und kein Text, Sonderzeichen oder ähnliches vorkommt). Alternativ kannst Du das "OnKeyPress" Ereignis der TB benutzen um ungültige Eingaben abzufangen. mfg realgun Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.