---
title: "2D-Array sorteringsproblem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/62873-2d-array-sorteringsproblem"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "nill"
published: "2002-12-22T11:34:52.000Z"
updated: "2002-12-22T19:04:44.000Z"
replies: 6
views: 223
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/62873-2d-array-sorteringsproblem"
---

# 2D-Array sorteringsproblem

## #1 — nill, 2002-12-22T11:34Z

Jag hittade en sorteringsalgoritm till min  Array  här på webforum.  Den funkar ganska bra men har ett stort problem med det.
Den sorterar så här:

         Staeger     
         Trituz 
         Vladrimir     
         XitR     
         abriz\_    
         alkaida   
         drillen     
         error    
         fet johan  

alltså börjar om igen.   Koden ser ut såhär:

```
Private Function Sort2D(ByVal ArrayToSort, ByVal iPos)
	Dim intMaxIndex
	Dim I, X
	Dim varTemp
	Dim intPositions, intPos
	intMaxIndex = UBound(ArrayToSort,2)
	intPositions = UBound(ArrayToSort,1)
	For I = 0 To intMaxIndex
		For X = (I + 1) To intMaxIndex
			If ArrayToSort(iPos, I) > ArrayToSort(iPos,X) Then
				For intPos  = 0 To intPositions
					varTemp = ArrayToSort(intPos, I)
					ArrayToSort(intPos, I) = ArrayToSort(intPos, X)
					ArrayToSort(intPos, X) = varTemp
				Next
			End If
		Next
	Next
	Sort2D = ArrayToSort
End Function
```

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

## #2 — PatrikB, 2002-12-22T16:53Z

Argumentet iPos bestämmer vilken av positionerna i den 2-dimensionella arrayen som det ska sorteras på.

Sorterar du på rätt position???

visa lite mer kod, kod där du anropar denna funktion.

cya,
PatrikB

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

## #3 — nill, 2002-12-22T17:05Z

Här är själva Array'n:

```
Arr(0, q) = RecSet("ID")			
Arr(1, q) = RecSet("nick")
Arr(2, q) = RecSet("titel")
Arr(3, q) = RecSet("gang")
```

och så sorteringsanropet

```
Arr = Sort2D(Arr, 1)
```

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

## #4 — PatrikB, 2002-12-22T18:09Z

återkommer ......

cya,
PatrikB

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

## #5 — PatrikB, 2002-12-22T18:41Z

har nu kikat på den igen ..... det är ett LCase som fattas i sorteringen:

```
Private Function Sort2D(ByVal ArrayToSort, ByVal iPos)
	Dim intMaxIndex
	Dim I, X
	Dim varTemp
	Dim intPositions, intPos
	intMaxIndex = UBound(ArrayToSort,2)
	intPositions = UBound(ArrayToSort,1)
	For I = 0 To intMaxIndex
		For X = (I + 1) To intMaxIndex
			If [b]LCase[/b](ArrayToSort(iPos, I)) > [b]LCase[/b](ArrayToSort(iPos,X)) Then
				For intPos  = 0 To intPositions
					varTemp = ArrayToSort(intPos, I)
					ArrayToSort(intPos, I) = ArrayToSort(intPos, X)
					ArrayToSort(intPos, X) = varTemp
				Next
			End If
		Next
	Next
	Sort2D = ArrayToSort
End Function
```

nu bör det funka

cya,
PatrikB

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

## #6 — PatrikB, 2002-12-22T18:43Z

fast ... borde du inte sortera i din sql-fråga???? klart mycket effektivare

cya,
PatrikB

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

## #7 — nill, 2002-12-22T19:04Z

tack så mycket. fungerade bra nu.

SQL sortering är ju mycket bättre men ser inget sätt att använda det här.Vi ska nog inte gå in på det närmare om du inte är jätteintresserade. Har att göra med att jag lagrar många ID i en kolumn och sen då hämtar informationen till varje ID.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/62873-2d-array-sorteringsproblem
