Avatar billede karsten_larsen Praktikant
02. april 2004 - 12:07 Der er 1 løsning

2 dimemsion til 1 dimension i array

Hovedproblem:

at omforme et 2 dimensionelt array, hentet med getrows og omsætte det til 1 dimensionelt.

Selve koden henter 2 dimensionelt array, og omformer det til et enkelt array, som kontroludskrives.

Når så det nye 1 dimensionelle array skal bruges husker det kun den første værdi.

Her følger selve koden:
    Set rs = Conn.Execute("SELECT * FROM resultat_standard WHERE Svarer = 1")
    rs.CacheSize = 10
   
    if not rs.eof then
        kolonner = Array ("1","2","3","4","5","6","7","8","9","10")
        arr_stiller = rs.getrows(-1,,kolonner)
    end if

    rs.close
    Conn.Close
    set rs = nothing
    Set Conn = nothing
   
       
Dim stiller ()
if isArray(arr_stiller) then
        N = Clng (UBound(arr_stiller,1))
        Redim  stiller(N)


    For i = LBound(arr_stiller) To UBound(arr_stiller,2)
            For j = LBound(arr_stiller) To UBound(arr_stiller,1)
                stiller (i) = arr_stiller(j, i)
                ' naar 1 dim. array udskrives kommer alle værdier med
                Response.write "j = " & j & " værdi = " & stiller (i) & "<br>"
            Next
    Next
else
    Response.write "ingen poster"
end if

' 1 dim. array genudskrives - og her er fejlen
For i = LBound(stiller) To UBound(stiller)
    Response.write "i = " & i & " værdi = " & stiller (i) & "<br>"
Next

og resultatet af koden.

j = 0 værdi = 2
j = 1 værdi = 3
j = 2 værdi = 2
j = 3 værdi = 1
j = 4 værdi = 2
j = 5 værdi = 3
j = 6 værdi = 3
j = 7 værdi = 2
j = 8 værdi = 1
j = 9 værdi = 2
i = 0 værdi = 2
i = 1 værdi =
i = 2 værdi =
i = 3 værdi =
i = 4 værdi =
i = 5 værdi =
i = 6 værdi =
i = 7 værdi =
i = 8 værdi =
i = 9 værdi =

Det skal siges at de data, som hentes med getrows, kun vil være af en dimension!

??:-) karsten_larsen
Avatar billede karsten_larsen Praktikant
02. april 2004 - 18:53 #1
Løsningen er:

arr_stiller = rs.getrows(1,,kolonner, som kun henter en række

samt udskrivning på denne måde

For i = LBound(arr_stiller) To UBound(arr_stiller,1)
    Response.write "i = " & i & " værdi = " & arr_stiller (i,0) & "<br>"
Next

:-)) karsten_larsen
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