Exel-Tabelle sortieren
Habe folgende Tabelle
mit Bereich A1 - E3
A B C D E
1 2 5 7 9 8
2 3 6 9 10 11
3 1 2 5 13 14
Ich möchte nun daß die Sortierung
folgendes Ergebnis bringt
A B C D E
1 1 2 2 3 5
2 5 6 7 8 9
3 9 10 11 13 14
mit welchem Befehl schaff ich das?
vielen Dank im voraus für Hilfe
Gruß Hugo
Antwort schreiben
Antwort 1 von Saarbauer vom 06.02.2020, 17:17 Options
hallo,
das ist wohl nur mit VBA hinzukriegen.
Gruß
Helmut
Antwort 2 von hull vom 06.02.2020, 17:39 Options
ich sehe
die Formatierung ist falsch.
Wer kann mir sagen wie ich hier überhaupt schreiben kann,
ohne daß meine Formatierung ständig
verändert wird.
Leerzeichen werden scheinbar völlig
ignoriert . Damit stehen meine Zahlen
unter den falschen Buchstaben.
Was muß ich tun damit der Text ,den ich schreibe genauso
wiedergegeben wird ,mit all seinen Leerzeichen.
Wenn ich etwas in der Mitte des Textfeldes eingebe,
dann soll es auch dort bleiben.
Es wird aber alles wieder an den Zeilenanfang
verschoben. Was tun?
Antwort 3 von hull vom 06.02.2020, 17:44 Options
was heißt bitte
VBA?
Gruß Hugo
Antwort 5 von hull vom 06.02.2020, 21:58 Options
Danke für Hinweis
jetzt weiß ich wenigstens
was VBA ist.
Meine obige Tabelle ist ja nicht
richtig dargestellt
Ich versuchs noch mal.
Gruß Hugo
Antwort 6 von hull vom 06.02.2020, 22:13 Options
Diese Tabelle mit Bereich
A1 bis D3
.......A____B___C___D
1...17___3____6____8
2....3____4___9____11
3...12___5___29___30
soll so sortiert werden:
.......A___B___C___D
1....3___3___4____5
2....6___8___9____11
3....12__17__29___30
so, jetzt nochmal meine Frage:
Kann jemand in Exel einen Sortierbefehl
erzeugen der diese Sortierung
bewerkstelligt.
Gruß Hugo
Antwort 7 von Saarbauer vom 08.02.2020, 08:06 Options
Hallo,
versuch es mal mit dem Makro
Sub Sort()
Zeilen = 4
Spalten = 4
For j = 1 To Zeilen
For k = 1 To Spalten - 1
For i = k + 1 To Spalten
If Cells(j, k).Value > Cells(j, i).Value Then
Hilfswert = Cells(j, k).Value
Cells(j, k).Value = Cells(j, i).Value
Cells(j, i).Value = Hilfswert
End If
Next i
Next k
Next j
For l = 1 To Zeilen - 1
If Cells(l + 1, 1).Value < Cells(l, Spalten).Value Then
Hilfswert = Cells(l + 1, 1).Value
Cells(l + 1, 1).Value = Cells(l, k).Value
Cells(l, k).Value = Hilfswert
For j = l To Zeilen
For k = 1 To Spalten - 1
For i = k + 1 To Spalten
If Cells(j, k).Value > Cells(j, i).Value Then
Hilfswert = Cells(j, k).Value
Cells(j, k).Value = Cells(j, i).Value
Cells(j, i).Value = Hilfswert
End If
Next i
Next k
Next j
l = 0
End If
Next l
End Sub
Die beiden Angaben
Zeilen = 4
Spalten = 4
sind auf deine Verhältnisse anzupassen
Gruß
Helmut
Antwort 8 von hull vom 08.02.2020, 17:50 Options
Ja um Gottes willen,
so eine Riesen Arbeit ,die du dir da gemacht hast.
Auf jeden Fall vielen Dank dafür.
Wenn ich jetzt dieses Makro kopiere
wo muß ich das dann einfügen?
Gruß Hugo
Antwort 9 von Saarbauer vom 08.02.2020, 18:41 Options
Hallo
du kannst es in Excel wie folgt einfügen:
Excel öffnen und unter "Extras""Makro""Visual Basic Editor" in dem Feld "Projekt- VBA Projekt" auf deine Arbeitsmappe klicken und mit der Rechten Maustaste "Einfugen""Modul" wird ein Fenster erzeugt und in dieses Fenster die Datei kopieren.
Dann Kannst du das Makro normal aufrufen
Gruß
Helmut
Antwort 10 von hull vom 10.02.2020, 15:01 Options
Hallo Helmut,
wieder vielen Dank
das Makro hab ich so eingefügt
wie du es beschrieben hast u. es klappt
hervorragend.
Andere Frage: wenn ich umgekehrt
eine Frage beantworten will mit einem
Beispiel so wie du mir das immer schickst
http://de.wikipedia.org/wiki/Visual_Basic_for_Applications
wie muß ich vorgehen damit du dann ebenfalls
so einen ähnlichen Link siehst.?
viele Grüße Hugo
Antwort 11 von Saarbauer vom 10.02.2020, 15:14 Options
Hallo,
über dem Antwortbereich sind Formatierungen angegeben und wietere Angaben findest du noch unter " Hilfe zur Beitragsformatierung gibts [hier] " noch eine Zeile höher (mal hier anklicken)
Gruß
Helmut
*Threadedit* 15:20:57
Antwort 12 von hull vom 10.02.2020, 16:20 Options
Hi Helmut
danke u. bis zum nächsten mal
Gruß Hugo