Man kan inte ange något annat än en siffra när man deklarerar en array.
Däremot fungerar det att använda redim.
DIM myArray ()
redim myArray (CINT(maxWords))
mvh
15 svar · 656 visningar · startad av Eclipse
Många konstiga problem...
Det fungerar inte att skriva:
' ## THE FIRST 4 IMAGES
IF UBound(mywords) > 4 THEN maxWords = 4 ELSE maxWords = UBound(mywords)
DIM myArray (CINT(maxWords))
Men det fungerar att skriva:
DIM myArray (4)
Microsoft VBScript compilation error '800a0402'
Expected integer constant
/v1/index.asp, line 64
DIM myArray (CINT(maxWords))
-------------^
Man kan inte ange något annat än en siffra när man deklarerar en array.
Däremot fungerar det att använda redim.
DIM myArray ()
redim myArray (CINT(maxWords))
mvh
För den be dig om en konstant interger...
Du får skriva:
Dim myArray(0)
ReDim Preserve myArray(CInt(maxWords))
Edit. Så händer det när man inte skriver snabbt nog ;) @nders hann (som vanligt) före en.... märks att du är tillbaka :P
Jag ber om ursäkt. ;)
Gött mos, broder!
Min hjärna är inte fullt ASP-kompatibel...
Även långsamma svar är tacksamma! :-)
Mera fel
DIM myArray (0)
redim myArray (CInt(maxWords))
****
Microsoft VBScript runtime error '800a000a'
This array is fixed or temporarily locked
/v1/index.asp, line 65
Jag har försökt lite olika varianter av den där koden. Dock med samma resultat.
Ta bört 0:an där du deklarerar arrayen - ange alltså ingen storlek alls.
(Jag vet att jag hade med 0 i mitt inlägg ovan - men jag kan ju också skriva fel...)
mvh
response.write " .... " & maxWords & " .. " & VarType(maxWords)
***
Detta ger...
4 ... 2
Från manualen:
vbInteger 2 Integer subtype
Ja, ok. Bra. Men när jag skriver "varType(myArray)"
Skrivs det 8204
Var kommer det nummret från!?
****
PS. Jag fattar inte hur du kan skriva så GRYMT fort...!!
http://helpdesk.kixtart.org/KixManual2001/functions/vartype.asp
edit:
PS. Jag fattar inte hur du kan skriva så GRYMT fort...!!
Jag har tio fingrar på varje hand, så jag jobbar med vänstern och wF:ar med högern.
@nders skrev:
http://helpdesk.kixtart.org/KixManual2001/functions/vartype.asp
edit:
PS. Jag fattar inte hur du kan skriva så GRYMT fort...!!
Jag har tio fingrar på varje hand, så jag jobbar med vänstern och wF:ar med högern.
glöm inte dina 8 ögon!
På länken och i manualen, ser det nu, står det 8192 men på min sida står det 8204. Två ggr dessutom.
I all välmening, men det är inte samma nummer...
8192 i kombination med 12 som är Variant säger 8204.
Dvs: Array med varianter.
12 Variant (used only with arrays of Variants)
8192 Array (can only occur in combination with one of the other values)
Hmm... Detta är nya marker för mig, i dubbel bemärkelse!
Det tar ett tag att smälta denna information. Saker verkar fungera nu och jag återkommer när jag vet varför...
Förresten: länken till kixtart har egentligen ingenting att göra med vbscript - värdena för vartype verkar dock vara desamma.
Tack för all hjälp!!
Det fungerar nu -- i teorin...
Låt mig rensa en aning i koden och posta den rätta koden i morgon. Det är ett rätt kul problem som fick en oväntad lösning faktiskt. Kanske fler kan ha nytta av på forumet.
Nu ska jag leta nygrill...
I'll be back! :-)