Sortering af range med blandet tekst og tal via VBA
En udfordrende Excel-opgave, som mangler en anvendelig løsning:Et range ("P7:P1048576") bestående af en kolonne med LOPSLAG, returnerer en lang - men spredt - liste af 5- eller 6-cifrede numre, som enten kan være rent numeriske eller med et bagvedstillet bogstav. Således er "12345" f.eks. forskellig fra "12345A". Listen kan indeholde et variabelt antal rækker, op til 3-4000 rækker, eller flere?
Hele kolonnen kopieres nu (via VBA-kode) fra ét ark (med formler) til et nyt ark, hvor den indsættes "specielt" som "kun værdier".
Idet der er tale om en kopieret kolonne med rækker returneret fra et LOPSLAG, er der selvsagt mange mellemliggende "tomme" rækker.
For at fjerne de tomme rækker (og samle de indsatte numre pænt og sammenhængende), anvendes (ligeledes via VBA) almindelig EXCEL sorteringsfunktion (i stigende orden).
UDFORDRINGEN ER: - at tilsyneladende kun dataværdier, som IKKE indeholde bogstaver sorteres???
Resterende rækker med data (som også indeholder bogstaver), beholder deres indbyrdes rækkeafstand og placering langt nede i kolonnen, (med mange mellemliggende tomme rækker til de ovenstående)
De øvrige kun numeriske værdier samles og sorteres fint i stigende orden, uden tomme mellemliggende rækker.
Bonus Info:
Hvis de samme "originale" og "blandede" værdier, sorteres i en kolonne (meget lig opslagsmatrix'en, altså IKKE formler og IKKE kopieret og "specielt" indsat, kan Excel's sorterings-funktion sagtens håndtere alle data, også de data som indeholder bogstaver. Her sorteres ALLE værdier i pæn stigende orden (med numre uden bogstaver først, og numre med bogstaver i pæn sorteret forlængelse heraf.
MEN ! - min udfordring er netop, at jeg ønsker en samlet og pænt sorteret liste, KUN med data fra LOPSLAGET (- men ALLE data fra LOPSLAGET)
Jeg håber at et nogle (blandt dem jeg ikke har tabt undervejs i min lange forklaring) måske ligger inde med et par anvendelige guldkorn?
Jeg mistænker lidt at de "specielt" indsatte rækker (som er tomme), i virkeligheden ikke er HELT tomme? - og at dette har en indvirkning?
Men jeg har hertil ikke en løsning. (Det hele SKAL kunne køres automatiseret via VBA, med et ukendt variabelt antal rækker)