Automatisk sortering som du skriver inn informasjon

August 20  by Eliza

Pat lurer på om det er en måte å automatisk sortere hver gang hun legger til nye data i et regneark. Pat mener det ville være flott, for eksempel, at når hun legger til et nytt navn til en liste med navn at navnene blir automatisk sortert å alltid være i orden.

Den eneste måten dette kan gjøres er å bruke en makro som utløses når noe nytt er lagt inn i regnearket. Du kan for eksempel legge en makro til koden for et regneark som utløses når noe i regneark endringer. (Du kan se koden vinduet ved å høyreklikke på fanen regneark og velge Vis kode fra den resulterende hurtigmenyen.) Følgende er et eksempel på en slik enkel makro:

Private Sub Worksheet_Change (ByVal Target As Range)
On Error Resume Next
. Range ("A1") Sorter Key1: = Range ("A2"), _
Bestilling1: = xlAscending, Header: = xlYes, _
OrderCustom: = 1, MatchCase: = False, _
Orientering: = xlTopToBottom
End Sub

Makroen forutsetter at du ønsker å sortere på dataene i kolonne A, og at det er en header i celle A1. Hvis navnene er i en annen kolonne, bare endre celle A2 referanse til en annen kolonne, for eksempel B2, C2, etc.

Selvfølgelig, sortering helst at enhver endring er gjort kan være belastende. Du vil kanskje begrense når sorteringen er gjort slik at det bare oppstår når det gjøres endringer i en bestemt del av dine data. Følgende versjon av makroen sorterer data kun når en endring er gjort i kolonne A.

Private Sub Worksheet_Change (ByVal Target As Range)
On Error Resume Next
Hvis ikke overlappe (Target, Range ("A: A")) Er Ingenting Deretter
. Range ("A1") Sorter Key1: = Range ("A2"), _
Bestilling1: = xlAscending, Header: = xlYes, _
OrderCustom: = 1, MatchCase: = False, _
Orientering: = xlTopToBottom
End If
End Sub

Det er noen ulemper med å bruke en makro til å automatisk sortere dataene. Først, siden du bruker en makro til å sortere, er operasjonen hovedsak "finalen". Med andre ord, etter at sortering kan du ikke bruke Ctrl + Z for å angre operasjonen.

En annen ulempe er at dataregistrering kan bli litt forvirrende. For eksempel, hvis du bruker noen av de ovennevnte makroer og du begynner å sette navn inn i regnearket, vil de bli sortert så snart du er ferdig med hva som er i kolonne A. Hvis dataene bruker fem søyler og du starter din oppføring i rad 15 , så snart du får gjort skrive inn navnet i kolonne A (og før du skriver inn data i kolonner B til E), dataene er sortert i riktig rekkefølge. Dette betyr at du trenger å finne hvor det ble flyttet i sorteringen, velg riktig celle i kolonne B, og deretter inn resten av dataene for posten. Selvfølgelig, er veien rundt dette å legge til dine data i en unaturlig ordre bare sørge for at navnet i kolonne A er den aller siste du skriver inn for posten.

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (9005) gjelder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Excel (Excel 2007 og senere) her: automatisk sortering som du skriver inn informasjon.