sbruden Skrevet 21. november 2008 Skrevet 21. november 2008 Jeg Skal sortere adresser etter postens tabell DVS fra 0000 til 2299 fra 2700 til 2799 fra 2300 til 2699 fra 2800 til 2999 fra 3000 til 3099 fra 3300 til 3699 fra 3100 til 3299 fra 3700 til 3999 fra 4600 til 4999 OSV helt il 9999 Hvordan kan jeg sortere dette i excel. Funksjonen egendefinert liste akseptere ikke så mange kriterier.
Glenn F. Henriksen Skrevet 21. november 2008 Skrevet 21. november 2008 Du kan ha et ekstra felt som viser sorteringsrekkefølgen til postnummeret. Det tallet kan du enten få fra en eller annen formel/makro som returnerer et tall som sier noe om hvor i rekken et postnummer skal være. F.eks. en makro som returnrere 1 hvis postnummeret er under 2700, 2 hvis det er fom 2700 tom 2799, 3 hvis det er fom 2300 og tom 2699 osv. Da får du en liste som har "grupperekkefølge" og postnummer: 2220, 1 2700, 2 2750, 2 0570, 1 osv. Da kan du sortere først på "grupperekkefølgen" og så på postnummeret. Alternativt kan du lage en liste med alle postnummerene i den rekkefølgen du vil de skal komme sammen med en verdi for rekkefølgen. Så kan du bruke VLOOKUP funksjonen for å slå opp rekkefølgen til et gitt postnummer, postnummer 2700 er da nr 2300 i rekkefølgen. Da kan du sortere på det. Nysgjerring: hvorfor trenger du de i den spesielle rekkefølgen?
sbruden Skrevet 21. november 2008 Forfatter Skrevet 21. november 2008 Takk for svar jeg har jobbet noe med Macro, men tror dette er litt over hode mitt:-) kan du spesifisere litt hvordan jeg setter opp kriteriene? svar på Nysgjerrig: Posten har et sorteringsystem som gjør at det skal flere postnr serier i samme postkasse. når jeg printer brev for konvoluttering i maskin ønsker jeg at brevene skal komme i riktig rekkefølge. på denne måten slipper maskin operatør å flytte postkasser flere ganger. foreksempel skal seriene : 3100 til 3299 og 3700 til 3999 og 4600 til 4999 i samme kasse hadde jeg printet i fortløpende rekkefølge måtte jeg byttet kasse etter 3299 får så å hente den når vi kommer til 3700. OSV. Når det skal printes 150 000 brev blir dette mye ekstra arbeid.
Glenn F. Henriksen Skrevet 21. november 2008 Skrevet 21. november 2008 Litt quick and dirty, lag deg en ny macro slik at du kommer inn i VB script editoren. Erstatt det du får opp med denne koden: Function GetSortOrder(postNummer As Integer) As Integer If postNummer >= 0 And postNummer <= 2299 Then GetSortOrder = 1 Exit Function End If If postNummer >= 2700 And postNummer <= 2799 Then GetSortOrder = 2 Exit Function End If If postNummer >= 2300 And postNummer <= 2699 Then GetSortOrder = 3 Exit Function End If If postNummer >= 2800 And postNummer <= 2999 Then GetSortOrder = 4 Exit Function End If If postNummer >= 3000 And postNummer <= 3099 Then GetSortOrder = 5 Exit Function End If If postNummer >= 3300 And postNummer <= 3699 Then GetSortOrder = 6 Exit Function End If If postNummer >= 3100 And postNummer <= 3299 Then GetSortOrder = 7 Exit Function End If If postNummer >= 3700 And postNummer <= 3999 Then GetSortOrder = 8 Exit Function End If ' Sett inn flere her ' Hvis vi kommer hit var det ingenting som passet, det betyr et ugyldig postnummer GetSortOrder = "" End Function Legg til de resterende kriteriene, husk å øke GetSortOrder = n for hver If blokk. Så kan du bruke den i Excel slik: =GetSortOrder(G13)
sbruden Skrevet 21. november 2008 Forfatter Skrevet 21. november 2008 Hjertlig takk Dette funket utmerket
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå