---
title: "Sortera fr.o.m t.o.m"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/52846-sortera-fr-o-m-t-o-m"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Mikro"
published: "2002-09-11T08:03:53.000Z"
updated: "2002-09-11T09:31:12.000Z"
replies: 4
views: 214
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/52846-sortera-fr-o-m-t-o-m"
---

# Sortera fr.o.m t.o.m

## #1 — Mikro, 2002-09-11T08:03Z

Hej!

Jag har en tabell som har två kolumner. Tabellen heter postnummer. Den första kolumnen heter pnr_nr och innehåller alla sveriges postnummer. Den andra heter pnr_ot och innehåller orten till varje postnummer.

Alla postnummer går inte i nummerföld. Jag skulle därför vilja "bunta" ihop de postnummer som går i nummerföljd och skriva ut dem i två separata celler i en tabell från och till.

Jag vill alltså att resultatet ska hoppa över de postnummer som inte finns i nummerföljden.

ex. 10005 - 10007
      10021 - 10140
      10500 - 10520

osv....

Snälla kan nån ge mig ett exempel på hur en sån kod skulle kunna se ut?? :birp

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

## #2 — LarsG, 2002-09-11T09:05Z

Hej och välkommen

```
dim q,rs,p_p,p_end
q = "select pnr_nr from postnummer order by pnr_nr"
set rs = connect.execute(q)
p_p = 0
p_end = 0
while not rs.eof
    if  clng(rs("pnr_nr") - p_p > 1  then
        if  p_p > 0 then
            if  p_end = p_p then
'bara 1 postnummer i denna svit
                response.write p_p & "<br>"
            else
                response.write p_p & "-" & p_end & "<br>"
            end if
        end if
        p_p = clng(rs("pnr_nr"))
    end if
    p_end = clng(rs("pnr_nr"))
    rs.movenext
wend 
'skriv ut det sista
if  p_end = p_p then
    response.write p_p & "<br>"
else
    response.write p_p & "-" & p_end & "<br>"
end if
```

ungefär så

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

## #3 — Mikro, 2002-09-11T09:20Z

Hej Lars!

Tack för svaret, och välkomnandet!

Koden fungerade men inte riktigt som jag ville, problemet är att jag har lite längre nummerföljder också och då blir resultatet

ex
10120-10121
10122-10123
10124-10125
10126-10127
10128-10129
10130-10131
10132-10133
10134-10135
10136-10137
10138-10139
10151-10152

jag vill liksom att den ska känna av gluggarna oavsett hur stort hoppet är mellan nummerföljderna.

Mvh
Mikaela

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

## #4 — LarsG, 2002-09-11T09:28Z

Jag ser felet

```
dim q,rs,p_p,p_end
q = "select pnr_nr from postnummer order by pnr_nr"
set rs = connect.execute(q)
p_p = 0
p_end = 0
while not rs.eof
    if  clng(rs("pnr_nr")) -  [b]p_end[/b] > 1  then
        if  p_p > 0 then
            if  p_end = p_p then
'bara 1 postnummer i denna svit
                response.write p_p & "<br>"
            else
                response.write p_p & "-" & p_end & "<br>"
            end if
        end if
        p_p = clng(rs("pnr_nr"))
    end if
    p_end = clng(rs("pnr_nr"))
    rs.movenext
wend 
'skriv ut det sista
if  p_end = p_p then
    response.write p_p & "<br>"
else
    response.write p_p & "-" & p_end & "<br>"
end if
```

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

## #5 — Mikro, 2002-09-11T09:31Z

aaaaahhhhh, vilken kille! Det fungerar! JÄTTETACK! Jag kommer definitvt tillbaka hit när jag har problem!

Tack snälla du!

/Mikaela

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/52846-sortera-fr-o-m-t-o-m
