Efter ti år i London, Madrid, Paris og Utrecht kommer Sabios AI-fokuserede program af arrangementer om kundeoplevelser, ‘Disrupt’, for første gang til Danmark.
Dim arPick(1 To 50) As Double Dim arResult(1 To 50) As Integer Dim i As Integer, j As Integer, k As Integer, dblPick As Double
'Nu laver vi et array af tilfældige tal Randomize For i = 1 To 50 arPick(i) = Rnd() Next i
'Nu Sorterer vi efter de tilfældige tal og bruger indekset som tal mellem 1 og 50 j = 1 While j <= 50 k = 0 dblPick = 0 For i = 1 To 50 If arPick(i) <> 0 And arPick(i) > dblPick Then dblPick = arPick(i) k = i 'gem indeks End If Next i arResult(j) = k arPick(k) = 0 'set element til 0 j = j + 1 Wend
'nu skriver vi lige de 50 tilfældige tal For i = 1 To 50 Debug.Print arResult(i) Next i
>jennemaan Jeg får meddelelsen: Subscript out of range. Det virker i Immediate vinduet, men hvis jeg skriver: arrXX(arResult(i)) = "Et eller andet" tæller den en for højt. Jeg har prøvet med "- 1" forskellige steder, men det virker fortsat ikke.
hvis du checker arResult i watchvinduet vil du kunne se at der kun forefindes værdier mellem 1 og 50. Derfor må fejlen ligge et andet sted. Har du prøvet i debug mode (der hvor fejlen opstår) at checke de enkelte værdier/arrays?
Jeg havde placeret arrXX() på den forkerte side af For...løkken
Så nu virker det
Tak for hjælpen
Synes godt om
Ny brugerNybegynder
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.