Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
416to420
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
416to420
416to420
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro Auslesen Vergleichen Sortieren

Makro Auslesen Vergleichen Sortieren
Steffen
Hi @ all,
ich habe folgendes Probelem und hoffe das ihr mir weiter helfen könnt. Also ich benötige ein Makro das aus verschiedenen Arbeitsblättern ein paar Daten ausliest, die Duplikate löscht, diese dann sortiert und dann in einem neuen Arbeitsblatt wieder ausgibt. Ich weiss das dieses Problem etwas komplexer ist, aber ich hoffe das ihr mir trotzdem weiter helfen könnt.
Mit freundlichen Grüßen
Steffen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro Auslesen Vergleichen Sortieren
P@ulchen
Hallo Steffen,
geh mal in die Recherche, Suchbegriff "Duplikate"...

P@ulchen
Das Forum lebt auch von den Rückmeldungen !
AW: Makro Auslesen Vergleichen Sortieren
Uwe
Hallo, Steffen!
Ergänzend zum Hinweis von P@ulchen, fällt mir auf, dass Deine Aufgabenstellen ziemlich allgemein gehalten ist, so dass es unmöglich ist, Deine Rahmenbedingung, die da sind:
  • Wie werden die Daten zu Verfügung gestellt (Fragen zur Selecktion)
  • handelt es sich um einen festen Bereich
  • handelt es sich im einen Zusammenhängenden Bereich
  • handelt es sich im ein vom Anwender zu markierenden Bereich
  • ....

  • Welche Datentypen sollen in die Selection erkennbar bleiben?
  • nur numerische Daten
  • Integer
  • Single ...

  • alphanumerische Daten

  • wie soll sortiert werden?
  • aufsteigend
  • absteigend

  • Wo ist der Zielbereich?
    Eine einfache Lösung habe ich hier für einen Bearbeitung von Integer-Daten geschrieben, die vielleicht als Grundgerüst für die weitere Ausarbeitung Dir hilfreich sein kann.

    Option Explicit
    Public Sub LesenSortierenFiltern(rng As Range) 'Übergabe eines Bereichs
    Dim v() As Integer, h As Integer 'ggf. Datentypen anpassen
    Dim d() As Integer
    Dim i As Long, maxi As Long, j As Long, c As Range
    Dim ws As Worksheet
    ReDim v(rng.Count), d(rng.Count)
    'Einlesen des Bereichs rng
    For Each c In rng
    maxi = maxi + 1
    v(maxi) = c.Value
    d(maxi) = 1 'Index zur Gültigkeitsbestimmung
    Next
    'Sortieren des Vektors v(i) aufsteigend - einfachster Sortieralgorhytmus
    For i = 1 To maxi - 1
    For j = i + 1 To maxi
    If v(j) < v(i) Then
    h = v(i)
    v(i) = v(j)
    v(j) = h
    End If
    Next j
    Next i
    'Entferne Duplikate
    For i = 1 To maxi - 1
    For j = i + 1 To maxi
    If v(i) = v(j) Then d(j) = -1
    Next j
    Next i
    'Ausgabe der sortierten, dupliktfreien Liste
    Set ws = Worksheets("Tabelle2") 'ggf. Ausgabetabelle anpassen
    With ws
    j = 0
    For i = 1 To maxi
    If d(i) < 0 Then
    j = j + 1
    .Cells(j, 1) = j
    .Cells(j, 2) = v(i)
    End If
    Next i
    End With
    End Sub
    


    Gruß!
  • Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige