Office: Sortierfunktion fest integrieren

Helfe beim Thema Sortierfunktion fest integrieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Excelspezialisten, in meiner Tabelle habe ich 1 Kopfzeile und 5 Spalten. Die Tabelle ist ein Bereich eines Tabellenblattes. Spalte 1 ist der... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Stephan_S, 10. Juli 2013.

  1. Sortierfunktion fest integrieren


    Hallo Excelspezialisten,

    in meiner Tabelle habe ich 1 Kopfzeile und 5 Spalten. Die Tabelle ist ein Bereich eines Tabellenblattes.
    Spalte 1 ist der Bezeichner, nennen wir ihn Läufer
    Spalte 2 ist sein erster Wert
    Spalte 3 ist sein zweiter Wert
    Spalte 4 ist das Ergebnis (genannt Wert) aus Wert 1 / Wert2
    Spalte 5 ist die Note und fest durchnummeriert von 1 bis 5

    Zum Sortieren markiere ich die Zellen der Spalten 1 bis 4 und zwar von der Kopfzeile bis zur letzten Zeile die sortiert werden soll, klicke mit rechts, wähle sortieren, benutzerdefiniert, sortieren nach Spalte Wert, aufsteigend.
    Jetzt sehe ich welcher Läufer auf Platz 1 ist usw.

    Wenn sich die Werte aber ändern, muss ich das Prozedere neu machen.
    Frage 1: Kann ich nicht den Tabellenbereich automatisch nach o.g. Kriterien sortieren lassen und wie geht das?
    Frage 2: Kann man das so gestalten, dass diese Automatik auch auf neu hinzukommende Zeilen automatisch erweitert wird?

    Für Eure vielen netten Antworten danke ich schon mal herzlichst im Voraus.
     
    Stephan_S, 10. Juli 2013
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    da Du nicht angegeben hast, welche Excel-Version Du hast, habe ich angenommen, dass Du Excel2007 oder später hast.
    In der beiliegenden Excel-Datei habe ich Dir ein VBA-Makro im Codemodul des Arbeitsblattes "Tabelle1" eingebaut, das automatisch darauf reagiert, falls Datenänderungen in den ersten 4 Spalten der Tabelle erfolgen. Genau dann werden die ersten 4 Spalten der Tabelle nach Spalte D aufsteigend sortiert. Spalte E bleibt unverändert.
     
    Exl121150, 10. Juli 2013
    #2
  3. Hallo Anton,
    funktioniert sehr gut. Vielen Dank dafür. Allerdings habe ich festgestellt, dass keine Nachkommastellen berücksichtigt werden. Die Werte 6,1 und 6,9 bekommen beide die gleiche Note. Und wie kann ich das in meine eigene Tabelle integrieren. Ich möchte das u.U. auch gerne in anderen Tabellen anwenden, wenn ich darf. Und da wäre es schön zu wissen, wie man sowas macht.
    LG
    Stephan
     
    Stephan_S, 10. Juli 2013
    #3
  4. Exl121150 Erfahrener User

    Sortierfunktion fest integrieren

    Hallo Stephan,

    Wie sich die "Note" in der 5. Spalte errechnet, hast Du nicht beschrieben ("Spalte 5 ist die Note und fest durchnummeriert von 1 bis 5"), wie auch immer das zu verstehen ist. Daher musst Du schon selber für die Berechnung der Note sorgen. Mein Makro sortiert die Zeilen der ersten 4 Spalten - sonst tut es nichts.
    Das "Dürfen" ist ja sicherlich kein Problem, sonst hätte ich das Makro nicht in einem öffentlichen Hilfeforum publizieren dürfen - es enthält außerdem kein spezielles "geheimes" Knowhow.
    Das "Wie" ist natürlich ein anderes Problem.
    1) Das Makro muss jeweils zur Gänze in das Codemodul des betreffenden Arbeitsblattes, in dem die Sortierung stattfindet, kopiert werden.
    2) Es muss die Ermittlung des zu sortierenden Bereiches entsprechend angepasst werden (unten blau gekennzeichnet).
    3) Es muss eventuell die Kennzeichnung der Spalte mit den Sortierkriteriumswerten (4.Spalte) angepasst werden (unten rot gekennzeichnet). Es muss dort nur die Zelle in der Überschrift angegeben werden, deren Spaltenwerte als Sortierkriterium hergenommen werden.
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
    
      Dim rgTab As Range
      
      On Error GoTo Err_Change
    [COLOR="#0000CD"]  Set rgTab = Me.Cells(2, 1).CurrentRegion
      Set rgTab = rgTab.Resize(ColumnSize:=4)[/COLOR]
      If Application.Intersect(rgTab, Target) Is Nothing Then Exit Sub
      
      Application.EnableEvents = False
      
      With ActiveSheet.Sort
        With .SortFields
            .Clear
            .Add Key:=[COLOR="#FF0000"]rgTab.Cells(1, 4)[/COLOR], SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
        End With
        .SetRange [COLOR="#0000CD"]rgTab[/COLOR]
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
      End With
      
    Err_Change:
      Application.EnableEvents = True
      
    End Sub
     
    Exl121150, 11. Juli 2013
    #4
  5. Hallo Anton,

    entschuldige bitte die späte Antwort, aber ich war ein paar Tage weg.
    Da hast Du Dir sehr viel Mühe gemacht. Vielen Dank dafür.
    Das Problem mit der gleichen Benotung ist erledigt, das lag daran, dass in der Spalte Deiner Mustertabelle die Note 5 zweimal vorkam und ich das ungesehen übernommen habe ;-)

    Verzeih mir bitte meine Laienhaftigkeit, aber wie komme ich in das Codemodul meiner Tabelle? Ich habe schon alles durchstöbert, aber entweder übersehe ich da was, oder ich bin einfach nur blöd.

    Vorab schon mal vielen Dank.

    LG
    Stephan
     
    Stephan_S, 16. Juli 2013
    #5
  6. Exl121150 Erfahrener User
    Hallo Stephan,

    es führen bekanntlich viele Wege nach Rom - der einfachste ist:
    1) Du machst mit der rechten Maustaste einen Klick auf den Tabellenreiter Deines Arbeitsblattes "Tabelle1". Dadurch erscheint das Kontextmenü des Arbeitsblattes. Aus dieser Liste wählst Du den Eintrag "Code anzeigen" aus. Daraufhin erscheint automatisch das Codemodul des Arbeitsblattes "Tabelle1".
    2) Ein anderer Weg wäre: Du drückst die Tastenkombination Alt+F11. Dadurch gelangst Du in den VBA-Editor. Falls hier dann das "Projekt-VBAProjekt"-Fenster nicht zu sehen ist, drückst Du die Tastenkombination Strg+R. Und dann machst Du in der dort enthaltenen Liste auf den Eintrag "Tabelle1 (Tabelle1)" einen Doppelklick - und Du stehst damit im Codemodul des Arbeitsblattes "Tabelle1".
    3) Um vom Codemodul wieder zurück zum Arbeitsblatt zu gelangen, drückst Du wieder die Tastenkombination Alt+F11.

    Du musst allerdings darauf achten, dass Du den Code im Codemodul des Arbeitsblattes "Tabelle1" bearbeitest/eingibst/änderst. Du darfst keinesfalls das Codemodul der Arbeitsmappe bearbeiten wollen - außerdem steht dort zur Zeit eh kein Code.
     
    Exl121150, 18. Juli 2013
    #6
Thema:

Sortierfunktion fest integrieren

Die Seite wird geladen...
  1. Sortierfunktion fest integrieren - Similar Threads - Sortierfunktion fest integrieren

  2. Datei als PDF speichern ohne festen Dateipfad

    in Microsoft Excel Hilfe
    Datei als PDF speichern ohne festen Dateipfad: Hey ihr Profis da draußen, ich versuche aktuell mehrere Excel-Blätter über VBA automatisch als PDF-Datei erstellen zu lassen. Einen Teilerfolg konnte ich bereits erzielen, mehrere Blätter werden...
  3. Emails im Posteingang nach "von" UND "Datum" sortieren klappt nicht...

    in Microsoft Outlook Hilfe
    Emails im Posteingang nach "von" UND "Datum" sortieren klappt nicht...: Ich hätte gerne meine eingehenden Emails nach "von" aber auch nach dem Datum des Eingangs sortiert. Sobald ich aber nach "von" und dann noch nach "absteigend" oder auch "aufsteigend" sortieren...
  4. Sortierfunktion enfernen (unterhalb der Suchleiste)

    in Microsoft Outlook Hilfe
    Sortierfunktion enfernen (unterhalb der Suchleiste): Hi Will die Sortierfunktion (siehe Anhang gelb gekennzeichnet) entfernen oder ausblenden. Hab's noch nicht gerafft wie das gehen soll. Ich brauche das nicht da ich ja auch einfach auf den Titel...
  5. Sortierfunktion über mehrere tabellenblätter

    in Microsoft Excel Hilfe
    Sortierfunktion über mehrere tabellenblätter: Guden Tach, Ich hätte eine sehr wichtige frage und zwar hab ich ein sehr ausführliches dokument in excel in dem eine fast endlos lange liste gespeichert ist. innerhalb dieser xls datei gibt...
  6. Sortierfunktion+Aktualisierung

    in Microsoft Excel Hilfe
    Sortierfunktion+Aktualisierung: Schönen guten Tag. Ich hab mal wieder ein problem und zwar: Ich mag ein Tabellenblatt jeden Tag aufs neue aktualisieren, was ich damit meine: Ich habe in einer Spalte I Informationen...
  7. Sortierfunktion macht komische Sachen

    in Microsoft Excel Hilfe
    Sortierfunktion macht komische Sachen: Hallo liebe Excel-Freaks! Im Rahmen meiner Dipl. Arbeit erstelle ich eine Excel-Tabelle, in der u.a. Gefährdungen an Arbeitsplätzen beschrieben werden. In dieser Tabelle habe ich einen Button...
  8. Datenblattübergreifender Bezug nach Sortierfunktion falsch

    in Microsoft Excel Hilfe
    Datenblattübergreifender Bezug nach Sortierfunktion falsch: Herzliches Hallo alle zusammen. Ich habe folgendes Problem: Ich benutze eine Excel 2003 SP2 und habe eine Arbeitsmappe mit mehreren Datenblätter. In den Datenblättern 2 und 3 habe ich etliche...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden