Projektanfrage

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unter-stützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! oder rufen Sie uns einfach an.

   
      Referenzen 

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   
     Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
   

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der Lösungs-
 findung?

  Nutzen Sie unser Auftragsformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
r
o
j
e
k
t
a
n
f
r
a
g
e
   

Sortieren mit der BubbleSort Routine

Das Thema Excel und Sortieren ist sehr vielfältig.

In diesem Beitrag zeigen wir Ihnen, wie Zahlen per VBA mit Hilfe der sogenannten BubbleSort Routine sortiert werden können.

Wikipedia bezeichnet die BubbleSort-Routine wie folgt: "BubbleSort (auch Sortieren durch Aufsteigen) ist ein Algorithmus, der vergleichsbasiert eine Liste von Elementen sortiert."

Zum Sortieren von Zahlen mit Hilfe der BubbleSort Routine kann der nachfolgend vorgestellte VBA-Code verwendet werden.

In diesem Beispiel befinden sich die zu sortierenden Zahlen im Zellbereich A5:A20 und sollen im Bereich B5:B20 in sortierter Reihenfolge ausgegeben werden.

Sub BubbleSort()

'** Dimensionierung der Variablen
Dim arr(1 To 1000)
Dim iCounter As Integer, iCount As Integer, iTmp As Integer, _
  lngLz As Long, lngStartZeile As Long, lngSpalte As Long

'** Startzeile und -spalte vorgeben
lngStartZeile = 5
lngSpalte = 1

'** Ermittlung der letzten Zeile
lngLz = ActiveSheet.Cells(Rows.Count, lngSpalte).End(xlUp).Row

'** Einlesen der unsortierten Daten in ein Array
For a = lngStartZeile To lngLz
  arr(a) = ActiveSheet.Cells(a, lngSpalte).Value
Next a

'** Sortierungsroutine
For iCounter = lngStartZeile To lngLz
  For iCount = iCounter + 1 To lngLz
    If arr(iCounter) > arr(iCount) Then
      iTmp = arr(iCounter)
      arr(iCounter) = arr(iCount)
      arr(iCount) = iTmp
    End If
  Next iCount
Next iCounter
   
'** Ausgeben der sortierten Daten in das Arbeitsblatt
For iCounter = lngStartZeile To lngLz
  ActiveSheet.Cells(iCounter, lngSpalte + 1).Value = arr(iCounter)
Next iCounter

End Sub

Über den untenstehenden Download-Link können Sie die Beispieldatei herunterladen. Zum Starten des Sortiervorgangs genügt ein Klick auf die Schaltfläche "Sortieren", das Ergebnis wird in der nebenstehenden Spalte B ausgegeben, siehe Abbildung 1.


Abbildung1

Weitere Beispiele zum Thema "Sortieren" finden Sie unter den nachfolgenden Links:

 

   

Relevante Artikel

  • Autofilter: Gefilterte Datensätze auslesen

    In diesem Artikel erläutern wir, wie sich der über einen Autofilter gefilterte Inhalt aus einer Liste auslesen lässt. Als Ausgangsbasis dient wieder einmal eine Artikelliste mit etwas mehr als 25...

  • Letzte Zeile, letzte Spalte und letzte Zelle per VBA ermitteln

    101012 Nachfolgend sehen Sie einige Makros, mit denen die letzte Zeile, die letzte Spalte bzw. die letzte Zelle ermittelt werden kann. Die Erläuterungen zu den einzelnen Makros finden Sie als...

  • Sortieren mit der BubbleSort Routine

    Das Thema Excel und Sortieren ist sehr vielfältig. In diesem Beitrag zeigen wir Ihnen, wie Zahlen per VBA mit Hilfe der sogenannten BubbleSort Routine sortiert werden können. Wikipedia bezeichnet...

  • Daten sofort bei Eingabe sortieren

    101080 Das nachfolgende Makro sortiert alle in einem Tabellenblatt eingegebenen Werte automatisch nach den Werten der Spalte A aufsteigend. Dabei werden die Zellen A1 bis A100 berücksichtigt. Die...

  • Array-Bereich direkt in Zell-Bereich schreiben

    Sie kennen sicherlich den gewohnten Umgang (schreiben und lesen) mit Array-Variablen. Normalerweise wird jeder Eintrag der Array-Variable einzeln referenziert. Sub Normales_Array()'**...