16. maj 2005 - 13:35Der er
19 kommentarer og 1 løsning
Automatisk sortering af liste i alfabetisk rækkefølge
Hejsa.
Er ved at lave en skabelon i excel, dvs den skal kunne bruges mange gange.
I et ark har jeg plads til at kopiere en lang række navne ind så de står i en lang liste. På et andet ark vil jeg så have den til at lave samme liste, bare i alfabetisk rækkefølge. Er det muligt uden alt for meget makro/VBA...???
Jeg kan desværre ikke gøre det manuelt linie for linie, da der er helt op til 128 personer på den liste (kan være alt fra 4 til 128), men ville gerne have lavet et eller andet smart i skabelonen.
Hmm... ja det er det nemmeste... problemet er bare at dem, der skal bruge skabelonen, ikke har en dyt forstand på excel, så derfor vil jeg gerne have den gør det automatisk... så de ikke skal gøre noget...
Antag at du har alle dine navne i Ark1, kolonne A. I Ark 2, kolonne A kan du så indsætte denne formel =Ark1!A1. Kopier den så langt ned, som du har brug for.
Så opdateres Ark2, samen med Ark1. Men sorteringen kan du nok ikke gøre uden VBA. Tryk Alt+F11 og kopier dette til ThisWorkbvook:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) If Sh = "ark2" Then Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess End If End Sub
Den sorterer ikke når jeg skifter over på ark 2... de står stadig i samme rækkefølge som på ark 1...
Men tænkte på... Range("A1"), skal der ikke stå hele intervallet der...???
Og noget andet... hvis der ikke står noget i feltet på ark 1 så skriver den jo '0' på ark 2, de kommer vel til at stå øverst når den har sorteret... kan man ikke enten fjerne dem helt eller skrive dem nederst...???
Eksempel: 64 ud af de 128 felter er udfyldt... dvs der også er 64 felter med '0'... så skal man scrolle 64 felter ned før man kommer til selve listen... knap så smart...
Desværre er det ikke så simpelt. Hvis A1 = 0 kan man selvfølgelig godt springe den over, men his A2 er 0, er du nødt til at undersøge den også, og den næste og den næste...
Alt andet lige, vil jeg gætte på at det er nemme at lære brugerne at klikke på den sorterknap, der allerede findes i værktøjslinien.
Ved ikke om det hjælper noget... men den liste med navne der skal sættes ind er altid 'hel'... ment på den måde at der ikke er huller eller 0'er i... 0'erne kommer først til sidst... dvs. at pladserne fra 1 til 64 (f.eks.) kan være navne, hvorefter alle 0'erne kommer...
Problemet er, at selv om det er muligt at teste på om en celle i Ark1 er tom, og så lade cellen i Ark2 være tom, vil tomme celle også blive sorteret før celler med indhold. De "tomme" celler er nemlig ikke tomme. De indeholder en formel.
Derfor er du nok nødt til at "rode dig ud i " noget makropogrammering omkring overførslen til det andet ark. Og det kræver lidt større viden om, hvordan dit ark er "strikket sammen". Men jeg skal desværre lige en tur i byen, og er ikek hjemme før omiring kl. 21.00, så måske er der andre, der kan give en hånd med...
Har nu lavet listen og skrevet en forklaring ved siden af, hvordan man sorterer... håber ikke de kludrer for meget rundt i det...
jkrons... selvom du ikke lige kunne løse mit problem vil jeg godt give dig point for ihærdighed... *S* Så smid et svar når du kommer hjem engang... :-)
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.