Mehr

VB Script Feldrechner - Fehler bei bedingten Anweisungen

VB Script Feldrechner - Fehler bei bedingten Anweisungen


Ich habe nur begrenzte Erfahrung mit VB-Skripten, habe aber an dem unten stehenden Skript gearbeitet und erhalte immer wieder Fehler, am häufigsten "erwarteter Bezeichner".

Kann mir jemand sagen was ich hier vermisse?

Dim class as Integer if [AGE_DATABA] >= 200 AND [Riparian_S] <> 1 then class = 5 elseif [AGE_DATABA] > 200 AND [Riparian_S] = 1 then class = 2 else class = 0 End if

Ausdruck = Klasse


Ich denke, es sind zwei Dinge im Gange. Erstens können Sie "class" nicht als Variablennamen verwenden, da VBScript diesen zum Definieren von Klassen reserviert. Und zweitens lassen Sie das "as Integer" in Ihrer Deklaration weg.

Das sollte funktionieren:

Dim rip_class if [AGE_DATABA] >= 200 AND [Riparian_S] <> 1 then rip_class = 5 elseif [AGE_DATABA] > 200 AND [Riparian_S] = 1 then rip_class = 2 else rip_class = 0 End if

Ihr Code funktioniert nicht, weil Sie das reservierte Schlüsselwort in VB verwenden, das istKlasse.

Dim n if [AGE_DATABA] >= 200 AND [Riparian_S] <> 1 then n = 5 elseif [AGE_DATABA] > 200 AND [Riparian_S] = 1 then n = 2 else n = 0 End if

dein Feld = n


Ich habe den folgenden Artikel von Microsoft über den Fehler ausgegraben, den Sie erhalten.

https://msdn.microsoft.com/en-us/library/5e3hfkby(v=vs.84).aspx

Es scheint ein Problem mit der Syntax oder der Verwendung einer VB-spezifischen Arbeit als Variable zu geben.

Ich denke, das Wort "Klasse" ist in VB Script ein reserviertes Wort.

http://support.microsoft.com/kb/216528

Versuchen Sie, "Klasse" in etwas völlig anderes zu ändern und erneut zu laufen.

Viel Glück!