Excel-Makros sind möglicherweise nicht so umfassend wie andere Automatisierungstools, aber die Gültigkeit und Effizienz von Excel VBA kann nicht untergraben werden. Wenn Sie in Excel und anderen Microsoft Office-Tools wie Word und Access arbeiten, können Sie mit VBA und seinen Fähigkeiten nichts falsch machen.

MS Excel ist ein leistungsstarkes Tool, das seinen Benutzern eine Vielzahl von Optionen bietet. Vom Speichern von Daten bis zum Erstellen automatisierter Dashboards können Sie alles in Excel und seinen Tabellenkalkulationen erledigen.

Wenn Sie VBA verwenden möchten, um Ihre Sortieraufgaben in Excel zu automatisieren, probieren Sie diese effizienten, einfach anzuwendenden Makros aus.

Laden Sie einen Dummy-Datensatz herunter

Für den Anfang können Sie einen Dummy-Datensatz herunterladen, um an Ihren Excel-Makrokenntnissen zu arbeiten.

Seien Sie versichert, sobald Sie diese Makros beherrschen und besser verstehen, wie die Dinge funktionieren, können Sie den Code an Ihre eigenen Tabellenkalkulationen für Arbeit oder Schule anpassen.

instagram viewer

Sie können den in diesem Artikel verwendeten Datensatz herunterladen, wenn Sie mitlesen möchten.

Herunterladen: Excel-Datensatz

1. Sortieren einer Spalte mit Excel-Makros

Verwenden Sie diesen einfachen Code, um eine Datenspalte in einer Excel-Tabelle zu sortieren. Wenn Sie den Dummy-Datensatz heruntergeladen haben, können Sie versuchen, Spalte E (Verkaufte Einheiten) zu sortieren.

Öffnen Sie eine neue Excel-Datei und speichern Sie diese mit einem Excel Makro-fähige Arbeitsmappe (.xlsm) Arbeitsmappentyp. In dieser Datei wird das Makro gespeichert, um Ihre Daten aus einer anderen Datei zu sortieren.

Verwandt: Die besten Online-Kurse zum Meistern von fortgeschrittenem Excel

Sie steuern Ihre Datei(en) über die Makrodatei, die separat mit Ihren Arbeitsmappen interagiert.

Geben Sie den folgenden Code ein:

Subsortwithheaders()
Arbeitsmappen("Finanzbeispiel.xlsx").Blätter (1).Aktivieren
Range("A1:P701").sort Key1:=Range("e1"), Order1:=xlAscending, Header:=xlYes
End Sub

Wo:

  • Schlüssel1: Definieren Sie die Spalte(n), die Sie sortieren möchten
  • Bestellung1: Bestellmethode (aufsteigend/absteigend)
  • Header: Wenn Ihr Inhalt Überschriften enthält, bleibt diese Option als xlJa. Alternativ wählen Sie xlNein.

Der Bereich besteht aus der Start- und Endzellenadresse, damit alles zu Sortierzwecken erfasst wird. Das Ergebnis ist, dass Ihr gesamter Datensatz basierend auf den Daten in Spalte E sortiert wird.

2. Sortieren dynamischer Daten in einer einzelnen Spalte

Es kann Fälle geben, in denen Ihr Startpunkt definiert ist, Ihr Endpunkt jedoch dynamisch ist. In einem solchen Fall können Sie Ihren Code dynamisch gestalten, sodass er automatisch das Ende des Bereichs aufgreift.

Verwenden Sie den folgenden Code, um die Änderung der Daten zu berücksichtigen:

Subsortwithheaders()
Arbeitsmappen("Finanzbeispiel.xlsx").Blätter (1).Aktivieren
Range("A1", Range("A1").End (xlDown)).sort Key1:=Range("e2"), Order1:=xlAscending, Header:=xlYes
End Sub

Wo:

  • Ende (xlDown): Diese Funktion wählt automatisch die letzte gefüllte Zelle aus

Notiz: Wenn die Formel in einer Spalte auf eine leere Zelle stößt, wird die vorherige Zelle als Ende des Bereichs betrachtet.

Verwandt: So erstellen Sie benutzerdefinierte Tastenkombinationen in Microsoft Excel

3. Mehrere Spalten zusammen sortieren

Es kann Situationen geben, in denen Sie Daten in mehreren Spalten auf einmal sortieren möchten. Dazu können Sie den folgenden Code verwenden, um Ihren Zweck zu erreichen:

UntersortierungMehrereSpalten()
Mit Arbeitsblättern("Blatt1")
Mit .Zellen (1, "A").CurrentRegion
.Cells.sort Key1:=.Range("B1"), Order1:=xlAscending, _
Key2:=.Range("E1"), Order2:=xlAufsteigend, _
Ausrichtung:=xlTopToBottom, Header:=xlYes
Ende mit
Ende mit
End Sub

4. Spalten über mehrere Blätter hinweg sortieren

Wenn Sie mit mehreren Blättern arbeiten, möchten Sie möglicherweise Ihre Daten vorbereiten, um sie in ein Dashboard einzufügen. Einer der wichtigsten Aspekte der Datenaufbereitung besteht darin, sie zu sortieren und die Daten in ein bestimmtes Format zu bringen, um sie Ihren Stakeholdern oder Kunden zu präsentieren.

Eine Möglichkeit besteht darin, jedes Blatt manuell durchzugehen, die erforderlichen Spalten zu sortieren und dann mit dem nächsten Schritt fortzufahren. Alternativ können Sie es auch von VBA erledigen lassen.

Die Absicht des folgenden Codes besteht darin, jedes verfügbare Blatt in der Arbeitsmappe zu durchlaufen und die verfügbaren Daten basierend auf den angegebenen Spalten zu sortieren.

Verwandt: Microsoft Excel-Suchfunktionen für eine effizientere Suche in Tabellenkalkulationen

So können Sie Spalten über mehrere Blätter hinweg sortieren:

UntersortierenWS()
Dim ws als Arbeitsblatt
'Gewünschtes Arbeitsblatt aktivieren
Arbeitsmappen("Finanzbeispiel.xlsx").Aktivieren
'Durchlaufen Sie jedes einzelne Arbeitsblatt automatisch mit der for-Schleife
Für jedes ws in ActiveWorkbook. Blätter
'jedes einzelne Arbeitsblatt aktivieren
ws. aktivieren Sie
'Definieren Sie den Bereich und sortieren Sie dann die Spalte nach Ihren Anforderungen. In diesem Fall wird nur eine Spalte sortiert.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Befehl, um zum nächsten Arbeitsblatt zu wechseln, nachdem das vorherige Arbeitsblatt sortiert wurde
Nächstes ws
End Sub

Alle Informationen, die mit einfachen Anführungszeichen beginnen, sind VBA-Kommentare. Diese werden während der Ausführungsphase nicht ausgeführt. Jeder von Ihnen hinzugefügte VBA-Kommentar ist jedoch eine sinnvolle Ergänzung des Codes, da Sie das Wesen, die Funktionalität und andere relevante Teile innerhalb der Codeabschnitte definieren können.

5. Kopieren sortierter Daten von einem Blatt in ein anderes

Stellen Sie sich eine Situation vor, in der Sie die Daten sortieren und den gesamten Datensatz (oder Teile davon) in ein neu hinzugefügtes Blatt kopieren möchten. In solchen Fällen können Sie den folgenden Code verwenden, um die vorliegende Aufgabe auszuführen:

UntersortierenWS()
Dim ws als Arbeitsblatt
'Gewünschtes Arbeitsblatt aktivieren
Arbeitsmappen("Finanzbeispiel.xlsx").Aktivieren
'Durchlaufen Sie jedes einzelne Arbeitsblatt automatisch mit der for-Schleife
Für jedes ws in ActiveWorkbook. Blätter
'jedes einzelne Arbeitsblatt aktivieren
ws. aktivieren Sie
'Definieren Sie den Bereich und sortieren Sie dann die Spalte nach Ihren Anforderungen.
'In diesem Fall wird nur eine Spalte sortiert.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Befehl, um zum nächsten Arbeitsblatt zu wechseln, nachdem das vorherige Arbeitsblatt sortiert wurde
Nächstes ws
'Ein neues Arbeitsblatt in der Arbeitsmappe erstellen, um die neuen Daten zu speichern
ActiveWorkbook. Blätter. Hinzufügen. Name = "Ergebnisse"
'Kopieren Sie die sortierten Daten und fügen Sie sie in das neu hinzugefügte Blatt ein
Sheets("Sheet1").Range("A1:p701").Copy Destination:=Sheets("Ergebnisse").Range("a1")
End Sub

Der obige Code sortiert die Werte in Spalte E, fügt ein neues Blatt hinzu Ergebnisse in die vorhandene Arbeitsmappe und fügen Sie die sortierten Ergebnisse in Zelle ein A1.

Erstellen von Sortiermakros in Excel

Excel VBA ist eine raffinierte Sprache, die Ihnen viel Zeit und Mühe ersparen kann. Durch die Verwendung von VBA-Makros können Sie umfangreiche Dashboards erstellen, Daten mit wenigen Klicks einfach sortieren und verschiedene Funktionen mit Leichtigkeit ausführen.

Glücklicherweise endet die Funktionalität von Excel nicht mit Makros. Sehen Sie sich einige Tipps und Tricks an, um ein effizienterer Excel-Benutzer zu werden.

Die Top 9 Websites und Blogs zum Erlernen von Excel-Tipps und -Tricks

Egal, ob Sie ein Meister in Excel sind oder gerade erst anfangen, hier sind die neun besten Websites und Blogs, auf denen Sie einige Tipps und Tricks lernen können.

Weiter lesen

TeilenTweetEmail
Verwandte Themen
  • Programmierung
  • Microsoft Excel
  • Makros
Über den Autor
Gaurav Siyal (8 veröffentlichte Artikel)

Gaurav Siyal verfügt über zwei Jahre Erfahrung im Schreiben von Dokumenten für eine Reihe von digitalen Marketingfirmen und Software-Lebenszyklusdokumenten.

Mehr von Gaurav Siyal

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Klicken Sie hier, um zu abonnieren