Helt riktigt att i inte får vara för stor.
Varför har du satt
For i = 4 To Columns
? Och vad är Columns?
8 svar · 310 visningar · startad av Boorg
Har en tabell som visar olika veckor, men är det ett fel och jag "tror" det är att i inte får vara så stor.
Den skall visa veckonummer från Vecka 1 2004 till vecka 1 2005 och får detta felmedelande:
Error Type:
Microsoft VBScript runtime (0x800A0009)
Subscript out of range: 'i'
Och här e koden:
MondayTemp = MinOfMonday
for i = 4 to Columns
tabell(0,i) = MondayTemp
tabell(1,i) = "<center>" & DatePart("ww",MondayTemp,2,2) & "</center>"
MondayTemp = DateAdd("ww",1,MondayTemp)
next
Någon som kan?
Mvh Jesper
Helt riktigt att i inte får vara för stor.
Varför har du satt
For i = 4 To Columns
? Och vad är Columns?
Engine^ skrev:
Helt riktigt att i inte får vara för stor.
Varför har du satt
For i = 4 To Columns? Och vad är Columns?
i är 4 för att dom fyra colummerna innan är redan fyllda
Columns är hur många kolummer i tabellen jag har, Jag ahr Columns och Rows, Columns bestämms av hur många veckor där är inställt
Ok... då gissar jag på att du ska göra loopen så här
For i = 3 To Columns - 1
Eftersom första indexet i en array alltid är noll.
Engine^ skrev:
ReDim() - http://www.devguru.com/Technologies/vbscript/quickref/redim.html
Hmm okej.. förstog inte riktigt på artikeln hur man skulle andvända det...
Att du kan öka Arrayens storlek. Men det ska ju du väl inte behöva göra...
Är din Array dimensionerad till
dim tabell(1, 53)
så ska väl det räcka.
Med ReDim kan du göra såhär
const ROWS = 7
dim tabell
[blue]'annan kod som gör saker och ting[/blue]
redim tabell(ROWS, 4)
[blue]'annan kod som gör saker och ting och plötsligt behöver du fler fält[/blue]
redim preserve tabell(ROWS, 10)
Hmmm okej...
Men hur ska man få in den i denna koden då?
MondayTemp = MinOfMonday
for i = 4 to Columns
tabell(0,i) = MondayTemp
tabell(1,i) = "<center>" & DatePart("ww",MondayTemp,2,2) & "</center>"
MondayTemp = DateAdd("ww",1,MondayTemp)
next
Det fattar jag nämmligen inte :/