Clever-Excel-Forum

Normale Version: Sortieren nach Größe
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo, 


ich importiere eine Excel-File aus unserem System und möchte die Spalte "Size" (Dateigröße) sortierbar machen nach aufsteigend/absteigender Größe. 
Jetzt ist das Problem, dass unser System automatisch die Werte verändert

byte = BYTES
kilobyte: KB
megabyte = MB
gigabyte = GB
...

Die Werte werden generell als Text übermittelt. Wie kann ich nach diesem Schema nun der Größe nach sortieren? 
Danke vorab!
Ich bin zwar kein Experte, aber wenn ich das Richtig verstanden habe, ist dein Problem nicht das Sortieren an und für sich, sondern die Nichtbeachtung der "Einheiten" / MB, KB etc.

Da würde es vll. helfen die Zahlen von den Werten zu trennen. Sprich aus einer Spalte zwei zu machen. Dann kannst du zwei Filter setzen und es müsste klappen.
Hallo,

wie wäre es, wenn Du das als Excel-Tabelle vorstellen würdest?
Ist das ein Schweizer System?
(21.02.2022, 12:23)Martin335 schrieb: [ -> ]Ich bin zwar kein Experte, aber wenn ich das Richtig verstanden habe, ist dein Problem nicht das Sortieren an und für sich, sondern die Nichtbeachtung der "Einheiten" / MB, KB etc.

Da würde es vll. helfen die Zahlen von den Werten zu trennen. Sprich aus einer Spalte zwei zu machen. Dann kannst du zwei Filter setzen und es müsste klappen.

Genau, die Einheiten werden nicht beachtet. Ich kann nur nach jeder Zahl für sich sortieren, außer sie sind identisch. (z.B. 130 KB = 130 KB)
Wenn ich die Einheit weglasse, kann nicht mehr zugeordnet werden, welcher Wert größer ist als der andere. 
Beispielsweise 130 KB und 12 GB. Die 130 KB wären größer als 12 GB, aber dabei sind 12 GB = 12 000 000 KB.
Hi,

eine von vielen Lösungen (ich geh davon aus, dass Dein Excel das Komma als Dezimaltrenner hat und es nur KB und Bytes gibt):

=WECHSELN(LINKS(A2;FINDEN(" ";A2)-1);".";",")*(1+999*ISTZAHL(FINDEN("KB";A2)))

runterkopieren und nach dieser Hilfsspalte sortieren.

[EDIT] Jetzt erst gesehen, dass es noch mehrere Einheiten gibt. Könnte man mit einer VERWEIS-Funktion einbauen - aber bis dahin ist sicher ein PQ-Verfechter da gewesen Wink
Lad doch mal einfach die Datei hoch. Das hilft in vielen Fällen.
Spreche da aus Erfahrung! ;)
=
TEIL(WECHSELN(A1:A4;" ";WIEDERHOLEN(" ";19));01;19)*10^(SUCHEN(GLÄTTEN(
TEIL(WECHSELN(A1:A4;" ";WIEDERHOLEN(" ";19));20;19));"B__KB_MB_GB")-1)


oder auch (wenn auch unsystematisch) kürzer:

=LINKS(A1:A4;SUCHEN(" ";A1:A4))*10^(SUCHEN(GLÄTTEN(RECHTS(A1:A4;2));"B  KB MB GB")-1)

macht aus

234 MB
2343 KB
3 GB
254456 B

sortierbare Zahlen:

234000000
2343000
3000000000
254456
Hallöchen,

Zitat:Lad doch mal einfach die Datei hoch. Das hilft in vielen Fällen.
Spreche da aus Erfahrung! ;)

Sollte man bei (so) einfachen Fragestellungen nicht tun ... Da sind in der Regel aussagekräftige und ggf. illustrierte Aufgabenbeschreibungen das A und O. Man kann da z.B. auch die Tabellentools nutzen, siehe die Hinweise in unserer Hilfe:

Ein neues Thema beginnen
Mal die sehr interessante Formel von LCohen dynamisiert:

AB
1Größesortiert
258,1 KB12 B
317 B17 B
415,894 MB12,4 KB
512 B58,1 KB
64,45674 GB15,894 MB
712,4 KB4,45674 GB

ZelleFormel
B2=LET(b;A2:INDEX(A:A;ANZAHL2(A:A));
s;LINKS
(b;SUCHEN(" ";b))*10^(SUCHEN(GLÄTTEN(RECHTS(b;2));"B  KB MB GB")-1);
SORTIERENNACH
(b;s))


Gruß Ralf
Da fällt mir ein: den Exponenten noch durch 3 teilen (oder "BKMGT" nehmen) und aus der 10 richtig 1024 machen. Dann ist es auf Byteebene etwas genauer. Ab 4stelligem TB kommen zwar 0 an die letzte Stelle, aber für die Genauigkeit reicht es.