Registriert seit: 10.04.2014
Version(en): 2016 + 365
01.03.2015, 16:34
(Dieser Beitrag wurde zuletzt bearbeitet: 02.03.2015, 15:22 von Heinz Ulm.)
Hi, ich habe folgende Tabelle: Tabelle1 | A | B | C | D | 1 | Sortier-Kriterium | Prozeß | Text | Text 2 | 2 | 1 | 1 | a | | 3 | 5 | 2 | b | | 4 | | | | c | 5 | | | | d | 6 | 2 | 3 | e | | 7 | | | f | | 8 | 6 | 4 | g | | 9 | 4 | 5 | h | | 10 | 3 | 6 | i | | 11 | | | j | | Zellrahmen werden nur schematisch und ohne Diagonalen dargestellt Zellrahmen 1 | | Zelle | Links | Rechts | Oben | | Linienart | Farbe | Linienart | Farbe | Linienart | Farbe | $A$2, $A$8:$A$9 | dünn durchgehend | | | | dünn durchgehend | | $A$3, $A$6, $A$10 | dünn durchgehend | | | | dünn durchgehend | | $A$4 | dünn durchgehend | | | | | | $A$5, $A$7, $A$11 | dünn durchgehend | | | | | | $B$2: $C$2, $B$8:$C$9 | | | | | dünn durchgehend | | $B$3: $C$3, $B$6: $C$6, $B$10: $C$10 | | | | | dünn durchgehend | | $D$2, $D$8:$D$9 | | | dünn durchgehend | | dünn durchgehend | | $D$3, $D$6, $D$10 | | | dünn durchgehend | | dünn durchgehend | | $D$4 | | | dünn durchgehend | | | | $D$5, $D$7, $D$11 | | | dünn durchgehend | | | |
Zellrahmen 2 | | Zelle | Unten | Diagonale abwäts | Diagonale aufwärts | | Linienart | Farbe | Linienart | Farbe | Linienart | Farbe | $A$1: $D$1, $B$5: $C$5, $B$7: $C$7, $B$11: $C$11 | dünn durchgehend | | | | | | $A$2, $A$8:$A$9 | dünn durchgehend | | | | | | $A$5, $A$7, $A$11 | dünn durchgehend | | | | | | $B$2: $C$2, $B$8:$C$9 | dünn durchgehend | | | | | | $D$2, $D$8:$D$9 | dünn durchgehend | | | | | | $D$5, $D$7, $D$11 | dünn durchgehend | | | | | | Zellen ohne Rahmen werden nicht aufgeführtExcel-Inn.de | Hajo-Excel.de | XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 | Add-In-Version 18.19 einschl. 64 Bit |
In den Spalten Text und Text 2 sind natürlich Freitexte ohne fortlaufend zu sein. Gibt es eine Möglichkeit, die Blöcke nach der Spalte A zu sortieren, ohne in A die Unterzeilen der Blöcke auch fortlaufend zu zählen?
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf, z.B. so: Code: Sub MeinSort() Dim rngLeer As Range On Error Resume Next With ActiveSheet.Range("A1").CurrentRegion For Each rngLeer In .Columns(1).SpecialCells(xlCellTypeBlanks).Areas rngLeer.Value = rngLeer.Offset(-1).Cells(1).Value Next rngLeer .Sort Key1:=.Cells(1), Header:=xlYes End With On Error GoTo 0 End Sub
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): 2016 + 365
01.03.2015, 17:13
(Dieser Beitrag wurde zuletzt bearbeitet: 01.03.2015, 17:22 von Rabe.)
Hi Uwe, danke, so funktionierts. Das muß ich morgen direkt mal an der Orschinaaal-Datei testen. Aber mit "ohne Makro" geht das nicht oder? Falls die Kollegen keine Makros zulassen wollen. Zellen verbinden habe ich ja getestet, gibt es da sonst keinen Trick? Dann müssen sie halt entweder das Makro zulassen oder manuell die Zahlen fortlaufend auch in die A-Leerzellen reinschreiben. Komisch ist, wenn ich die Blöcke so mit Zellrahmen markiere und dann sortiere, egal ob mit Deinem Makro oder durch manuelles fortlaufendes Zeilen nummerieren, dann bleiben die Rahmen so stehen und nur der Inhalt wird sortiert.
Zellen sortieren mit Leerzeilen.xlsb (Größe: 17,64 KB / Downloads: 2)
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf, manuell mit Formelhilfsspalte und sortieren nach dieser. Formel von E3 runterziehen. Tabelle1 | A | B | C | D | E | 1 | Sortier-Kriterium | Prozeß | Text | Text 2 | | 2 | 1 | 1 | a | | 1 | 3 | 5 | 2 | b | | 5 | 4 | | | | c | 5 | 5 | | | | d | 5 | 6 | 2 | 3 | e | | 2 | 7 | | | f | | 2 | 8 | 6 | 4 | g | | 6 | 9 | 4 | 5 | h | | 4 | 10 | 3 | 6 | i | | 3 | 11 | | | j | | 3 | Formeln der Tabelle | Zelle | Formel | E2 | =A2 | E3 | =WENN(A3="";E2;A3) |
| Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4 Gruß Uwe
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf, scheint wohl so zu sein, dass Rahmen nicht sortiert werden. Andere Zellformate wandern mit. Hab es mit E2003 und E2010 getestet. Gruß Uwe
Registriert seit: 13.04.2014
Version(en): 365
Hallo, dann das Ganze mit einem Makro und Hilfsspalte: Code: Sub MeinSort() Dim loletzte As Long Dim Nummer As Double Dim loa As Long loletzte = Application.WorksheetFunction.Max(Cells(Rows.Count, 1).End(xlUp).Row, Cells(Rows.Count, 2).End(xlUp).Row, Cells(Rows.Count, 3).End(xlUp).Row, Cells(Rows.Count, 4).End(xlUp).Row) For loa = 2 To loletzte If Cells(loa, 1) <> "" Then Cells(loa, 5) = Cells(loa, 1) Else Cells(loa, 5) = Cells(loa - 1, 5) + loa / 1000 End If Next Range(Cells(2, 1), Cells(loletzte, 5)).Sort key1:=Cells(2, 5) Range("E:E").Clear Range(Cells(1, 1), Cells(1, 4)).Borders.LineStyle = xlContinuous For loa = 3 To loletzte If Cells(loa, 1) <> "" Then Range(Cells(loa, 1), Cells(loa, 4)).Borders(xlEdgeTop).LineStyle = xlContinuous Next End Sub
Die Linien kannst Du ja selbst noch in das Makro einbauen.
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hallo zusammen, das mit den Rahmen ist nicht so schlimm (glaube ich), die können wir vermutlich auch weglassen, die habe ich in der Beispieldatei ja nur für das Forum zur Darstellung der zusammengehörigen Blöcke eingefügt. Wie es in der Original-Datei ist, weiß ich grad nicht. Ist sichergestellt, daß bei leerer Zelle in Spalte A dann auch der Block in dieser Reihenfolge bleibt? Oder werden die leeren Zell-Zeilen nach irgendwas umsortiert? Eigentlich müßte es so bleiben, da ja das einzige Sortierkriterium die Spalte A ist. Tabelle1 | A | B | C | D | E | 1 | Sortier-Kriterium | Prozeß | Text | Text 2 | | 2 | 1 | 1 | a | | 1 | 3 | 5 | 2 | b | | 5 | 4 | | | | c | 5 | 5 | | | | d | 5 |
verwendete Formeln | | Zelle | Formel | Bereich | N/A | E2:E5 | =WENN(A2="";E1;A2) | | |
Excel-Inn.de | Hajo-Excel.de | XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 | Add-In-Version 18.19 einschl. 64 Bit |
Registriert seit: 13.04.2014
Version(en): 365
Hallo Ralf,
ich weiß gerade nicht, auf was Du Dich beziehst, mein Makro arbeit mit einer Hilfsspalte in E, die nach dem Sortieren gelöscht wird.
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi Edgar, (01.03.2015, 22:23)BoskoBiati schrieb: ich weiß gerade nicht, auf was Du Dich beziehst, mein Makro arbeit mit einer Hilfsspalte in E, die nach dem Sortieren gelöscht wird. ich hatte mich auf Uwes Beitrag bezogen. Dein Makro teste ich auch morgen mit den Originaldaten.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
(01.03.2015, 21:15)Rabe schrieb: Ist sichergestellt, daß bei leerer Zelle in Spalte A dann auch der Block in dieser Reihenfolge bleibt? Oder werden die leeren Zell-Zeilen nach irgendwas umsortiert? Eigentlich müßte es so bleiben, da ja das einzige Sortierkriterium die Spalte A ist. Hi Ralf, ich konnte nichts gegenteiliges feststellen. Auf Nummer Sicher geht Edgar mit dem Auffüllen aufsteigender Nachkommastellen. Gruß Uwe
|