Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1592to1596
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wenn Dann gleich sortieren

Wenn Dann gleich sortieren
30.11.2017 08:58:39
Michael
Guten Morgen,
ich habe eine Bestellliste erstellt. Diese zeigt in Spalten F-H das bestellte an,
wenn in Spalte E eine Anzahl eingetragen wird.
Leider bekomme ich es nicht hin, dass die Liste der Bestellungen sofort (automatisch) sortiert angezeigt wird, also ohne die leere Zeilen. Bereich
E bis H soll aussehen wie Bereich J bis M!
Wer kann helfen?
VIELEN DANK
https://www.herber.de/bbs/user/118003.xlsx

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wenn Dann gleich sortieren
30.11.2017 09:35:41
ransi
Hallo,
Unsortiert ohne Leerzeilen krieg ich hin:
Tabelle1

 ABCDEFGH
1 1      
2    AnzahlArtikelGesamtpreisEinzelpreis
31Halbes Hähnchen3,00 €0,00 € Hähnchenschlegel1,63,2
42Hähnchenschlegel1,60 €3,20 €2Putenpartyschnitzel im Semmel2,211
53Schnitzel3,20 €0,00 € Lamm-Haxen4,28,4
64Partyschnitzel1,60 €0,00 € Weißwürste - nur Freitags1,715,3
75Partyschnitzel im Semmel2,00 €0,00 € Käsespätzla3,57
86Putenschnitzel3,50 €0,00 € Kartoffelsalat1,53
97Putenpartyschnitzel1,80 €0,00 € Karottenkrautsalat1,63,2
108Putenpartyschnitzel im Semmel2,20 €11,00 €5Lumpensalat2,85,6
119Cordon bleu3,80 €0,00 € Kesselfleisch mager1,73,4
1210Fleischsemmel1,60 €0,00 € #ZAHL!#ZAHL!#ZAHL!
1311Fleischküchle1,30 €0,00 € #ZAHL!#ZAHL!#ZAHL!
1412Fleischküchle im Semmel1,60 €0,00 € #ZAHL!#ZAHL!#ZAHL!
1513Schweins-Haxen3,20 €0,00 € #ZAHL!#ZAHL!#ZAHL!
1614Lamm-Haxen4,20 €8,40 €2   
1715Mini-Haxen2,00 €0,00 €    
1816Schälrippchen2,70 €0,00 €    
1917Gegrillter Bauch1,70 €0,00 €    
2018Leberkäase1,50 €0,00 €    
2119LKW1,40 €0,00 €    
2220Weißwürste - nur Freitags1,70 €15,30 €9   
2321Bauernwürste1,70 €0,00 €    
2422Paprikawürste1,70 €0,00 €    
2523Saitenwürste1,70 €0,00 €    
2624Käsespätzla3,50 €7,00 €2   
2725Portion Spätzla2,30 €0,00 €    
2826Pommes1,50 €0,00 €    
2927Kroketten1,50 €0,00 €    
3028Wedges1,50 €0,00 €    
3129Soße extra0,30 €0,00 €    
3230Ketchup0,20 €0,00 €    
3331Kartoffelsalat1,50 €3,00 €2   
3432Gem. Salat3,00 €0,00 €    
3533Grüner Salat1,30 €0,00 €    
3634Karottenkrautsalat1,60 €3,20 €2   
3735Nudelsalat1,60 €0,00 €    
3836Wurstsalat2,80 €0,00 €    
3937Schweizer-Wurstsalat2,80 €0,00 €    
4038Lumpensalat2,80 €5,60 €2   
4139Puten-Wurstsalat2,80 €0,00 €    
4240Kesselfleisch normal1,70 €0,00 €    
4341Kesselfleisch mager1,70 €3,40 €2   
4442Knöchle Stck.1,20 €0,00 €    
4543Bier1,20 €0,00 €    
4644Bild Zeitung0,90 €0,00 €    
47  Gesamt:60,10 €28 60,10 € 

Formeln der Tabelle
ZelleFormel
F3{=INDEX($B$3:$D$46;KKLEINSTE(WENN($E$3:$E$46<>"";ZEILE($A$1:$A$43)); ZEILE(A1)); SPALTE(A1))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
ransi
Anzeige
AW: Wenn Dann gleich sortieren
30.11.2017 09:39:21
Michael
Hi ransi,
dass schaut ja schon mal sehr gut aus. Jetzt habe ich einen Fehler von mir entdeckt. Ich hätte noch eine Spalte einfügen müssen, damit es vor dem Artikel die Stückzahl anzeigt, denn diese jetzt stimmt ja nicht und kriegst Du es hin, dass die Anzahl und der Gesamtbetrag unter der letzten Bestellung steht so wie im Beispiel?
DANKE
AW: Wenn Dann gleich sortieren
30.11.2017 10:22:49
UweD
Hallo
mit 2 Änderungen ginge es
- Die Formeln in F bitte das " " (mit Leerzeichen) ändern in "" (ohne Leerzeichen)
- in der Summenzeile in Spalte F XXXXX eintragen (Steht dann beim Sortieren ganz unten)
Dann
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Diesen Code dort reinkopieren
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim LZ As Integer On Error GoTo Fehler If Not Intersect(Range("E:E"), Target) Is Nothing Then If Target.Row > 2 Then If Target.Count = 1 Then Application.EnableEvents = False Columns("K:N").Value = Columns("E:H").Value With Me.Sort .SortFields.Clear .SortFields.Add Key:=Range( _ "L:L"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal .SetRange Columns("K:N") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("K1:N1").Insert xlDown LZ = WorksheetFunction.Match("XXXXX", Columns("L")) Range("L" & LZ).ClearContents Else MsgBox "Bitte einzeln bearbeiten" End If End If End If Err.Clear Fehler: Application.EnableEvents = True If Err.Number <> 0 Then MsgBox "Fehler: " & _ Err.Number & vbLf & Err.Description: Err.Clear End Sub
Bei jeder Änderung in E wird kopiert und sortiert
Gruß UweD
Über Rückmeldungen würde ich mich freuen
Anzeige
AW: Wenn Dann gleich sortieren
30.11.2017 10:24:44
UweD
- in der Summenzeile in Spalte F XXXXX eintragen (Steht dann beim Sortieren ganz unten)
Die Zelle kannst du ja in weißer Schrift formatieren
AW: Wenn Dann gleich sortieren
30.11.2017 10:32:40
Michael
Danke für die ausführliche Beschreibung und den Code, aber wenn ich F8 bzw. F5 drücke geht ein Fenster auf (Makros). Muß ich den Code erst in einem Modul abspeichern? Und wie kann ich auf dem Blatt Tabelle1 einen Button erzeugen, damit ich auf diesem Blatt das Makro starten kann?
Danke mal
AW: Wenn Dann gleich sortieren
30.11.2017 10:48:06
UweD
Hallo nochmal
Nicht in ein Modul, sondern wie ich geschrieben habe .. (in den Codebereich von Tabelle1)
Den Code selbst hab ich noch so abgeändert, dass das XXXXX geggelassen werden kann.
Option Explicit 
 
Private Sub Worksheet_Change(ByVal Target As Range) 
    Dim LZ As Integer, TMP As String 
    On Error GoTo Fehler 
    If Not Intersect(Range("E:E"), Target) Is Nothing Then 
        If Target.Row > 2 Then 
            If Target.Count = 1 Then 
                TMP = "XXXXX" 
                Application.EnableEvents = False 
                LZ = Cells(Rows.Count, "E").End(xlUp).Row 
                Range("K2:N" & LZ).Value = Range("E2:H" & LZ).Value 
                Range("L" & LZ) = TMP 
                With Me.Sort 
                    .SortFields.Clear 
                    .SortFields.Add Key:=Range( _
                        "L:L"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
                        xlSortNormal 
                    .SetRange Range("K2:N" & LZ) 
                    .Header = xlYes 
                    .MatchCase = False 
                    .Orientation = xlTopToBottom 
                    .SortMethod = xlPinYin 
                    .Apply 
                End With 
                LZ = WorksheetFunction.Match(TMP, Columns("L")) 
                Range("L" & LZ).ClearContents 
            Else 
                MsgBox "Bitte einzeln bearbeiten" 
            End If 
             
        End If 
    End If 
    Err.Clear 
Fehler: 
    Application.EnableEvents = True 
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear 
End Sub 
 

Nur die Formel in F abändern =WENN(ISTLEER(E3);"";B3)
Button brauchst du nicht, da das makro so automatisch bei Zelländerung ausgefügrt wird und nur in Spalte E wirkt.
LG UweD
Anzeige
AW: Wenn Dann gleich sortieren
30.11.2017 10:53:19
Michael
PERFEKT - SUPER - MEGA
Vielen Dank Uwe
Danke für die Rückmeldung owT
30.11.2017 11:27:18
UweD

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige