Avatar billede ste Nybegynder
27. august 2004 - 07:05 Der er 2 kommentarer og
2 løsninger

Vælge et bestemt array

Hej Eksperter.
Kan det lade sige gøre at vælge et bestemt udsnit af et array, så man for eksempel kun skriver den første eller sidste ud. Eller måske de første 3 eller de sidste 3.
Arryet ser således ud.
Dim arrxxx, xxx
        arrxxx = Split(xxx,",")
        For t = LBound(arrxxx) to UBound(arrxxx)
        Response.Write arrxxx(t) & VbCrLf
        Next
Avatar billede fennec Nybegynder
27. august 2004 - 08:43 #1
Ja, du kan altid selv vælge hvilke felter du vil have ud.

Sidste 3.
Response.Write arrxxx(ubound(arrxxx)-2)
Response.Write arrxxx(ubound(arrxxx)-1)
Response.Write arrxxx(ubound(arrxxx))

Første 3
Response.Write arrxxx(LBound(arrxxx))
Response.Write arrxxx(LBound(arrxxx)+1)
Response.Write arrxxx(LBound(arrxxx)+2)

Sidste og første
Response.Write arrxxx(ubound(arrxxx))
Response.Write arrxxx(LBound(arrxxx))

ps. Du skal dog være sikker på et der er nok elementer i tabellen når du bruger +/-. Hvis der er mindre end 3 elementer, kan du jo ikke udskrive de 3 sidste/første, da der ikke er så mange elementer.
Avatar billede medions Nybegynder
27. august 2004 - 08:44 #2
Hvis du har flg.:
Dim arrxxx, xxx
        arrxxx = Split(xxx,",")

Så skriver du den første post ud i Arrayet sådan her:
arrxxx(LBound(arrxxx))
og den sidste ud sådan her:
arrxxx(UBound(arrxxx))

Den treide sidste sådan her:
arrxxx(UBound(arrxxx)-3)

//>Rune
Avatar billede tdh1309 Juniormester
27. august 2004 - 08:48 #3
jeg forstår ikke helt hvad du mener for det er faktisk ligetil...
I nedenstående eksempel udskrives månederne
- startende fra laveste måned (indeks 0) + 2, hvilket altså betyder marts
- til sidste måned (indeks 11) - 4, hvilket er september
Hvis dette ikke løser dit problem - må du lige prøve at beskrive det lidt nærmere...

Held og lykke


' Build array contaning months
Months = "Januar, Februar, Marts, April, Maj, Juni, Juli, August, September, Oktober, November, December"
arrMonths = split(Months,",")                ' Splits string by ,

printArrStart = Lbound(arrMonths)+2
printArrEnd  = Ubound(arrMonths)-4

for t=printArrStart to printArrEnd
    response.write(arrMonths(t))
next
Avatar billede ste Nybegynder
09. september 2004 - 13:45 #4
Tak til fenec og medions.
Jeg vælger at dele pointene imellem jer da i næsten er samtidig med svaret uden dog at være enslydende. Jeg kunne bruge svarene. Tak for det.
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