ASP-Fehlermeldung
Hamza Raya
- vb-script
0 MarkX0 Ingrid0 Sascha Mandelkow
Hallo Leute
Frage: Warum funktioniert das nicht ?
----------------------------------------------------------
Function Hochkommata(Zahl)
Zahl = Trim(Zahl)
Zahl = FormatNumber(Zahl, 0)
Hochkommata = Replace(Zahl, ",", "'")
End Function
For i = 5000 to 30000 step 5000
response.write "<option value=""" & i & """>"
i = Hochkommata(i)
response.write i & "</option>"
Next // Das hier ist die Zeile 112
----------------------------------------------------------
Ich erhalte immer die Fehlermeldung:
Error Type:
Microsoft VBScript runtime (0x800A000D)
Type mismatch: '[string: "5'000"]'
/autokassir/suche/suche_erw.asp, line 112
Bin dankbar für alle Antworten
Gruss
Hamza (verzweifelt)
Hi
response.write "<option value=""" & i & """>"
Warum hast Du hier 3 Anführungszeichen hintereinander??
Hab ich so noch nie gesehen.
MfG
MarkX
Hallo
ich denke mal, dass das Problem in deiner Funktion zu suchen ist.
Trim kriegt als input einen String und gibt auch einen String zurueck,
FormatNumber braucht aber eine Zahl.
Du solltest also dazwischen mal deinen String in eine Zahl umwandeln.
Gruss
Ingrid
For i = 5000 to 30000 step 5000
response.write "<option value=""" & i & """>"
i = Hochkommata(i)
response.write i & "</option>"
Next // Das hier ist die Zeile 112
Hallo Hamza,
deine For-Next-Schleife arbeitet mit Integern, wie es sein soll.
Allerdings ersetzt du innerhalb der Schleife deinen Zähler i gegen einen String (den du ausgibst). Beim Next versucht VB dann, einen String zu inkrementieren, was nur schiefgehen kann.
Du solltest also deine Funktion Hochkommata() lediglich zur Ausgabe deines Strings verwenden, i dabei aber in Ruhe lassen...also:
For i = 5000 to 30000 step 5000
response.write "<option value=""" & i & """>"
response.write Hochkommata(i) & "</option>"
Next
Grüße
Sascha