---
title: "Dela upp efter ett visst antal värden."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/84189-dela-upp-efter-ett-visst-antal-värden"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Fredde Mannen"
published: "2003-08-13T16:14:59.000Z"
updated: "2003-08-15T19:06:09.000Z"
replies: 11
views: 280
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/84189-dela-upp-efter-ett-visst-antal-värden"
---

# Dela upp efter ett visst antal värden.

## #1 — Fredde Mannen, 2003-08-13T16:14Z

Jag har mitt lilla problem; jag hämtar information från en textfil på en annan server med HttpXML och lägger in allt i en array med att köra **Split(variabel," ")**.

Sedan loopar jag ut allt med:

```
Response.Write("<table>")
For each item in arrString
Response.Write(<tr><td>" & item & "<td></tr>")
Next
Response.Write("</table>")
```

Allt raddas upp, japp! Men jag vill dela upp det så att den skriver ut i en tabell ungefär så här, alltså ett visst antal kolumner, säg 10 st, och efter att skrivit ut de första 10, så börjar den på en ny rad och skriv ut fortsättningen... osv. 

t.ex.
item1 \| item2  \| item3 \| item4 \| item5
item6 \| item7  \| item8 \| item9 \| item10
item11 \| item12

Hoppas ni förstår! :q :e

Permalänk: https://www.webforum.nu/p/84189

## #2 — Jesper T, 2003-08-13T16:18Z

Lägg till en räknare.
i=1
i=i+1
if i=10 then Response.write "\<br\>" end if

Permalänk: https://www.webforum.nu/p/1137960

## #3 — Fredde Mannen, 2003-08-13T16:27Z

> **Jesper T skrev:**
>
> Lägg till en räknare.
> i=1
> i=i+1
> if i=10 then Response.write "\<br\>" end if

Hmm... om jag vill att resultatet ska visas så här:

```
<table>
<tr>item1<td>item2</td><td>item3</td></tr>
<tr>item4<td>item5</td><td>item6</td></tr>
osv...
</table>
```

Dessutom så med: 

```
i = 1
i = i +1

if i = 10 Then
Response.Write("<br />")
End if
```

Så sätter han väl bara ett \<br /\> där i = 10 och sen raddar den upp som vanligt!? :q

Permalänk: https://www.webforum.nu/p/1137968

## #4 — mozilla, 2003-08-13T16:47Z

Är inte säker på att det är så här du menar... men testar ändå

```
Response.Write("<table><tr>")

For i = 0 to UBound(arrString)
  if(i mod 5 = 0) Then Response.Write "</tr><tr>"
  Response.Write("<td>"& arrString(i) &"<td>")
Next

Response.Write("</tr></table>")

%>
```

Permalänk: https://www.webforum.nu/p/1137985

## #5 — Fredde Mannen, 2003-08-13T16:54Z

> **mozilla skrev:**
>
> Är inte säker på att det är så här du menar... men testar ändå
> 
>
>
> ```
> Response.Write("<table>")
> 
> For i = 0 to UBound(arrString)
>   if(i mod 5 = 0) Then Response.Write "</tr><tr>"
>   Response.Write("<td>"& arrString(i) &"<td>")
> Next
> 
> Response.Write("</table>")
> 
> %>
> ```

Något sådant kan det nog vara.. men blir förvirrad, bör jag inte sätta en \<tr\> efter \<table\> ? eller ? :q

Permalänk: https://www.webforum.nu/p/1137989

## #6 — @nders, 2003-08-13T17:00Z

Det kan nog tänkas passa att slänga in en \<tr\> ja.

Permalänk: https://www.webforum.nu/p/1137993

## #7 — Jesper T, 2003-08-13T18:54Z

> **Fredde Mannen skrev:**
>
> Så sätter han väl bara ett \<br /\> där i = 10 och sen raddar den upp som vanligt!? :q

Man kan nollställa räknaren också. ;)

Permalänk: https://www.webforum.nu/p/1138045

## #8 — Nexus86, 2003-08-13T19:06Z

```
Response.Write "<table><tr>"

x = 1
For i = LBound(arrString) To UBound(arrString)
    If x Mod 10 = 0 Then
        Response.Write "</tr><tr>"
        x = 1
    End If
    
    Response.Write "<td" & IIf((i = UBound(arrString)) And (x Mod 10 <> 0, " colspan=""" & (10 - (x Mod 10) + 1), "") & """>" & arrString(i) & "</td>"
    x = x + 1
Next

Response.Write "</tr></table>"
```

Otestat men bör vara säkrare än mozillas kod eftersom att man ska ha lika många kolumner på varje rad och om den sista raden innehåller t.ex. 3 "items" så får sista raden endast 3 kolumner vilket blir fel om alla andra rader innehåller 10 kolumner. Den här koden kollar hur många kolumner som fattas och lägger det som colspan i sista kolumnen. :)

R// Gjorde även en till variabel utifall att arrString känner för att inte börja med 1. ;)

Permalänk: https://www.webforum.nu/p/1138055

## #9 — @nders, 2003-08-13T19:10Z

Får väl ta och slänga in funktionen Iif() också, som av någon helt oförklarlig anledning inte finns att tillgå i VBScript:

```
Function Iif(condition, truecase, falsecase)
    If (condition) then Iif = truecase else Iif = falsecase
End function
```

Mvh

Permalänk: https://www.webforum.nu/p/1138059

## #10 — Fredde Mannen, 2003-08-14T18:51Z

Okey.... har nu fixat detta med att dela upp det i kolumner.... jag tänkte sen dela upp så att det blir en paging om det är mer än 60 värden i filen.

Kan jag dela upp en array på flera sida ex denna array: 

```
arrString = Split(strString," ")
i = 0

For i = i to Ubound(arrString)
i = i + 1
Response.Write(arrString(i) & "<br />")
Next
```

Jag kan ju ränka ut antalet sidor med ex:

```
intPSida = 60
intTotalSidor = CInt(UBound(arrString)/intPSida)
```

UBound(arrString) blir lika med = 159

Sedan när jag skriver ut från 0 till ex. 60 går det bra.... och ex från 60 till 120 går bra.  men sedan från 120 och framåt till ja 180 som det blir om jag har intPSida = 60. 

Då dör den eftersom det bara finns 159 värden i arrayen.
Då till frågan: **Kan jag avsluta Loopen när i = Ubound(arrString)  ???**

Permalänk: https://www.webforum.nu/p/1138511

## #11 — @nders, 2003-08-14T19:07Z

Ja.

```
If i = Ubound(arrString) then Exit For
```

**r:** det blir fler likhetstecken om man trycker på shift.

Mvh

Permalänk: https://www.webforum.nu/p/1138528

## #12 — Fredde Mannen, 2003-08-15T19:06Z

> **@nders skrev:**
>
> Ja.
> 
>
>
> ```
> If i = Ubound(arrString) then Exit For
> ```
>
> 
> 
> **r:** det blir fler likhetstecken om man trycker på shift.
> 
> Mvh

Thanks mate. Då var nog denna tråd avklarad! :) \*hoppas jag\* :e

Permalänk: https://www.webforum.nu/p/1138984

---

Tråden på webben: https://www.webforum.nu/amne/asp/84189-dela-upp-efter-ett-visst-antal-värden
