Avatar billede foldager Novice
19. september 2003 - 14:39 Der er 5 kommentarer og
1 løsning

låse række til brug for sortering

Jeg har et regneark med data, hvor en række hører sammen.
Jeg vil gerne kunne sortere på en kolonne, så der ikke går rod i mine rækker.
Hvordan gør man det?

Jeg vil gerne være fri for at markere rækkerne hver gang.
Avatar billede aheiss Praktikant
19. september 2003 - 14:46 #1
1. Marker kolonnen (eller området)
2. Data / Sorter
3. Fortsæt med aktuel markering
4. OK
Avatar billede dla Praktikant
19. september 2003 - 14:49 #2
Jeg ved ikke hvad du mener med går rod i rækkerne. Excel bytter aldrig rundt på rækkernes indhold. Men hvis du har data før de rækker du vil have sorteret og data bagefter, kan det godt være du er nødt til at markere hvilke rækker der skal sorteres.
Avatar billede aheiss Praktikant
19. september 2003 - 14:49 #3
Jeg læste forkert - den ene række skal forblive uændret !
Avatar billede aheiss Praktikant
19. september 2003 - 15:41 #4
Det var dog en frygtelig opgave. Følgende makro løser problemet håber jeg. Det kræver dog at to kolonner inddrages som en slags hjælpe/oplysningskolonner. BB bruges som en slags opbevaring. I BC skal du skrive hvilke rækker der ikke skal sorteres med. Dvs. BC1 = 8, BC2 = 10 osv. Det er kolonne F der sorteres i dette eksempel. Håber det kan bruges:

Sub sorter()
Application.ScreenUpdating = False
Dim midl As Range
Dim midl2 As Range
Set midl = Range("bb:bb")
Set midl2 = Range("bc:bc")
Dim kol As Range
Set kol = Range("f:f")  ' hvilket område skal sorteres
For Each cell In midl2
cell.Select
rak = cell
    If rak = "" Then
    GoTo fortsæt
    Else
    kol(rak, 1).Select
    Selection.Cut
    midl(rak, 1).Select
    ActiveSheet.Paste
    End If
Next
fortsæt:
    kol.Select
Selection.Sort Key1:=Range("f:f"), Order1:=xlDescending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
For Each cell In midl2
cell.Select
rak = cell
    If rak = "" Then
    GoTo fortsæt2
    Else
    kol(rak, 1).Select
    Selection.Insert Shift:=xlDown
    midl(rak, 1).Select
    Selection.Cut
    kol(rak, 1).Select
    ActiveSheet.Paste
    End If
Next
fortsæt2:
[a1].Select
End Sub
Avatar billede plcsk Nybegynder
20. september 2003 - 01:54 #5
Det kan være at jeg ikke helt forstår dit spørgsmål, men jeg ser ingen grund til at kode VBA
Prøv følgende:
markere hele dataområdet, gå op og vælg Data - Sorter. hvis du vælger hele dataområdet inklusiv header, så går der ikke rod i det.
Alternativ kan du isteden for vælge Data-Filter-Autofilter.
Avatar billede foldager Novice
01. oktober 2003 - 22:13 #6
Jeg ved det! Det er et kringlet og tilsyneladende ligegyldigt, ja næsten ikke eksisterende, problem jeg forsøger at belyse i få ord.

Der er tilsyneladende ingen nem løsning, ud over den indlysende, nemlig at markere de felter man vil sortere. Det var dog rart at få bekræftet min første indskydelse.

Tak for tip og kode!
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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