Gå til innhold

[Løst] Sortering i excel


Trelkrok

Anbefalte innlegg

Hei, har NORSK excel, Office 365

 

Trenger litt hjelp angående sortering av telefonliste som går over to sider med overskrift på side 1

og side 2.

 

Rad 4 til 36 skal sorteres etter kolonne G. NB! Rad 24 skal ikke være med da dette er overskrift på side 2.

 

Deretter skal rad 38 til 49 sorteres etter kolonne G. (Denne er grei)

 

Lar dette seg gjøre?

 

Skal bruke makro ved sortering.

 

 

 

 

 

 

Kopi av TELEFONLISTE utkast 3.xlsx

Lenke til kommentar
Videoannonse
Annonse

Tror jeg har løs dette med følgende makro, ser det greit ut tror dere?

 

Sub SortereTelefonliste()
'
' SortereTelefonliste Makro
'
 
'
    ActiveSheet.Unprotect Password:="****"
    Rows("24:24").Select
    Selection.EntireRow.Hidden = True
    Range("C4:L36").Select
    ActiveWorkbook.Worksheets("Telefonliste").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Telefonliste").Sort.SortFields.Add2 Key:=Range( _
        "G4:G36"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Telefonliste").Sort
        .SetRange Range("C3:L36")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Rows("23:25").Select
    Selection.EntireRow.Hidden = False
    Range("C38:L49").Select
    ActiveWorkbook.Worksheets("Telefonliste").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Telefonliste").Sort.SortFields.Add2 Key:=Range( _
        "G38:G49"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Telefonliste").Sort
        .SetRange Range("C38:L49")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("G4").Select
    MsgBox "Telefonliste er sortert alfabetisk :)"
ActiveSheet.Protect Password:="****", _
      DrawingObjects:=True, Contents:=True, Scenarios:=True
 
End Sub
Lenke til kommentar

Hei

 

Ja virker den så er den fin. Du kan gjerne endre header = xlguess til xlYes eller xlNo avhengig av om det faktisk er overskrifter på side to.

 

Med litt trening kan du droppe linjer med Select. Det fører gjerne til at markøren står et helt annet sted enn før makroen startet. Men på den annen side, det har en imponatoreffekt å se maskinen jobbe automatisk, så noen ganges skal man også la slikt stå og la skjermen hoppe og danse litt.

 

Beste hilsen Harald

Lenke til kommentar

Hei

 

Ja virker den så er den fin. Du kan gjerne endre header = xlguess til xlYes eller xlNo avhengig av om det faktisk er overskrifter på side to.

 

Med litt trening kan du droppe linjer med Select. Det fører gjerne til at markøren står et helt annet sted enn før makroen startet. Men på den annen side, det har en imponatoreffekt å se maskinen jobbe automatisk, så noen ganges skal man også la slikt stå og la skjermen hoppe og danse litt.

 

Beste hilsen Harald

Hei, må nok trene MYE da Harald ;)

 

For og slippe hoppe og dansing startet jeg makroen med:

 

Application.ScreenUpdating = False 'skjule hva som skjer
Application.Calculation = xlCalculationManual 'Excel regner ikke ut
 
og avsluttet med:
 
 End With
    Application.Calculation = xlCalculationAutomatic 'Slår påigjen utregning
    Application.ScreenUpdating = True 'viser hva som skjer igjen
DoEvents
Application.Calculate
DoEvents
    
    Range("G4").Select
    MsgBox "Telefonliste er sortert alfabetisk :)"
ActiveSheet.Protect Password:="****", _
      DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

 

 

Ha en fin dag og takk for tipps

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...