Avatar billede steen_e Nybegynder
11. oktober 2001 - 17:39 Der er 14 kommentarer og
1 løsning

VBScript: numerisk værdi af strengvariabel ?

Jeg mangler en VBScript-funktion, som returnerer den numeriske værdi af en strengvariabel, f.eks.:

funktion(\"34\") = 34
funktion(\"fs\") = 0
funktion(\"09\") = 9
funktion(\"3g\") = 3

-anyone?
Avatar billede jelzin101 Praktikant
11. oktober 2001 - 17:53 #1
dim hulahop as string

hulahop = \"123456\"
talhop = val(hulahop)
Avatar billede steen_e Nybegynder
12. oktober 2001 - 08:57 #2
Det virker sq ikke:

Microsoft VBScript compilation error \'800a0401\'

Expected end of statement

/steen/test.asp, line 2

dim hulahop as string
------------^
Avatar billede steen_e Nybegynder
12. oktober 2001 - 08:58 #3
...og hvis jeg kommenterer dim\'men ud, får jeg:

Microsoft VBScript runtime error \'800a000d\'

Type mismatch: \'val\'

/steen/test.asp, line 5
Avatar billede proaccess Nybegynder
12. oktober 2001 - 09:10 #4
Brug cLng()
Avatar billede steen_e Nybegynder
12. oktober 2001 - 09:45 #5
proaccess > jo, clng() virker, men kun sådan: clng(\"123\") = 123. Hvis du prøver clng(\"123abc\") får du en fejlmeddelelse - jeg leder efter en funktion, som i dette tilfælde returnerer funktion(\"123abc\") = 123.
Avatar billede proaccess Nybegynder
12. oktober 2001 - 10:07 #6
Kan du så ikke prøve at lave din \"egen\" funktion til håndtering af dette...

Function str2lng (strValue as String) as Long
  Dim intLoop
  intLoop = 1
  While Instr(\"0123456789\", Mid(strValue, intLoop, 1)) > 0
    intLoop = intLoop + 1
  Wend
  str2lng = cLng(\"0\" + Left(strValue, intLoop))
End Function

Ovenstående er IKKE testet, men du burde kunne arbejde videre derfra...
Avatar billede steen_e Nybegynder
12. oktober 2001 - 11:49 #7
...siger du dermed, at en sådan funktion ikke findes indbygget i VBScript?!?
Avatar billede proaccess Nybegynder
12. oktober 2001 - 11:52 #8
Jeg kan i hvert fald ikke finde den i MS\'s dokumentation... ;-(
Avatar billede cellaneous Nybegynder
13. oktober 2001 - 11:23 #9
Bare lige et pip - har ikke forstand på vbscript men...

du siger du får fejl i \"dim hulahop as string\" men har du også dim\'et \"talhop\" som et tal?
Avatar billede steen_e Nybegynder
14. november 2001 - 09:19 #10
Jeg har endnu ikke fundet funktionen i VBScript - den fandtes i Commodore 64 Basic V2, så jeg har ikke fantasi til at forestille mig at den ikke findes i VBScript - jeg lukker spørgsmålet, men tak for de mange gode forslag og intentioner!
Avatar billede proaccess Nybegynder
14. november 2001 - 09:36 #11
Du fik ellers et rigtigt godt svar: DEN FUNKTION FINDES IKKE !!!

Der var derudover en \"hjemmekonstrueret\" funktion til fri afbenyttelse, så jeg mener det er lidt tyndt at du selv tager points for dette spørgsmål, men det er selvfølgelig din egen samvittighed du skal leve med !!!
Avatar billede steen_e Nybegynder
14. november 2001 - 09:38 #12
Mener du virkelig jeg skal tro på, at den funktion simpelthen ikke FINDES i VBScript ?!?
Avatar billede proaccess Nybegynder
14. november 2001 - 09:44 #13
JA, VBScript er en kraftigt neddroslet version af Visual Basic, hvor man har fravalgt blandt andet denne funktion...

Desuden kan jeg bemærke at fordi en funktion har været med fra Commodore64 Basic V2, er der absolut ingen garanti for at den er tilgængelig i VBScript - Det er jo hver sin compiler, og svarer til at hver Ford-bil skal have både Ford- og Opel-motorer og omvendt...

Avatar billede steen_e Nybegynder
14. november 2001 - 09:50 #14
OK, proaccess, jeg vælger, (atter) dybt rystet over Micro$ofts ignorance, at tro på, at funktionen mangler i VBScript. I den situation skal du selvfølgelig have dine 15 point for din funktion. Jeg smider lige et spørgsmål, du kan besvare.
Avatar billede steen_e Nybegynder
14. november 2001 - 09:51 #15
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester