Avatar billede _ksj_ Nybegynder
07. august 2008 - 07:42 Der er 10 kommentarer

Sorter data

Jeg har en opgave hvor jeg skal lave en kode der kan sorterer et datasæt først efter en kolonne bestående af tal og derefter en kolonne bestående af bogstaver.
Datasættet ser fx således ud
god    1,2
dårlig  2,3
dårlig  3,5
god    2,1
Avatar billede supertekst Ekspert
07. august 2008 - 08:48 #1
Skal det forstås sådan, at data er i et regneark?

Hvis ja - prøv at indspille en makro,der udfører sorteringen - ellers giv signal.
Avatar billede _ksj_ Nybegynder
07. august 2008 - 09:13 #2
Ja data er i regnerarket.
Jeg kan også godt finde ud af at lave en kode ved at optage en makro, men jeg har brug for at lave en sorterings funktion i stedet, for at gøre programmet hurtigere!!
Avatar billede supertekst Ekspert
07. august 2008 - 12:38 #3
Hvordan skal denne funktion aktiveres?
- via en knap
- når arket aktiveres
- når det deaktiveres
- eller?
Avatar billede _ksj_ Nybegynder
07. august 2008 - 12:49 #4
bare ved en knap...
Jeg går ud fra hjeg skal lave en Quicksort.
Jeg har noget kode, men jeg kan kun få den til at virke for bogstaver og så sorterer den kun en kolonne!!

Sub QuickSort(lft As Integer, rgt As Integer, liste As variant)
    Dim i As Integer, j As Integer, x As String, w As String
    i = lft
    j = rgt
    x = liste((lft + rgt) \ 2)
    Do
        Do While liste(i) < x
            i = i + 1
        Loop
        Do While liste(j) > x
            j = j - 1
        Loop
        If i <= j Then
            w = liste(i)
            liste(i) = liste(j)
            liste(j) = w
            i = i + 1
            j = j - 1
        End If
    Loop Until i > j
    If lft < j Then
        Call QuickSort(lft, j, liste)
    End If
    If i < rgt Then
        Call QuickSort(i, rgt, liste)
    End If
End Sub
Avatar billede supertekst Ekspert
07. august 2008 - 13:01 #5
Så skal du oprette en knap, der forbindes med din sorteringsSUB
Knappen kan oprettes via "Kontrolelementer" - i design tilstand kan du oprette koden, der hænger sammen med "Klik på knappen"
Avatar billede _ksj_ Nybegynder
07. august 2008 - 13:09 #6
Jeg tror vi er gået lidt forbi hinanden :) det er ligegyldigt hvordan koden aktiveres. Mit problem er at lave en funktion der kan sortere mit datasæt (det er fordi den sorteringsmekaniske man kan få ved at optage en makro i excel er alt for langsom). Og det nye sorterede datasæt skal så gemmes i arrays da jeg skal arbejde videre med dem!!
Avatar billede supertekst Ekspert
07. august 2008 - 13:33 #7
Hvor mange rækker skal der sorteres - siden du synes at Excel's egen sortering er for langsom?
Avatar billede _ksj_ Nybegynder
07. august 2008 - 16:14 #8
der er ca 15.000 rækker og 8 kolonner
Avatar billede kabbak Professor
07. august 2008 - 19:01 #9
Avatar billede kabbak Professor
07. august 2008 - 19:06 #10
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