Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1764to1768
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

exceltabelle autoamtisch umsortieren

exceltabelle autoamtisch umsortieren
13.06.2020 11:26:28
Michael
Hallo und schönen guten Tag,
ich habe eine Exceltabelle bekommen, die nach M-Nr. sortiert ist.Sie ändert sich nur, wenn neue M-Nr. zugefügt werden. Diese muss ich für verschiedene Zwecke nach Alphabet neu sortieren. Dabei dürfen nur Zeilen übernommen werden, bei denen der Wert in der Spalte "Austritt zum" kleiner als das aktuelle Datum ist.
Gibt es dafür eine Lösung?
Danke schon jetzt.
https://www.herber.de/bbs/user/138258.xlsx

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: hierzu ...
13.06.2020 11:57:32
neopa
Hallo Michael,
... kann ich momentan nur feststellen, dass es auch dafür sicherlich auch eine Lösung gibt. Jedoch ist mir für Deine eingestellten Datei nicht klar geworden, was Du wie anstrebst.
Du hättest zumindest ein paar Dummy-Namen in Spalte D sowie Austrittsdatums listen und dafür dann z.B. in anderen Spalten Dein angestrebtes Ziel aufzeigen sollen.
Gruß Werner
.. , - ...
AW: hierzu ...
14.06.2020 12:33:13
Michael
Hallo Werner,
ich habe die Mappe um die Tabelle 2 ergänzt. So soll das aussehen.Die Spalten b und c spielen keine Rolle. Schmidt und Lehmann sollten nicht auftauchen, weil sie vor dem aktuellen Datum ausgeschieden sind.
Ich hoffe, jetzt habe ich da klarer formuliert.
https://www.herber.de/bbs/user/138278.xlsx
Anzeige
AW: hierzu ...
14.06.2020 23:11:39
fcs
Hallo Michael,
deine ursprünhliche Frage war unklar formuliert.
Dabei dürfen nur Zeilen übernommen werden, bei denen der Wert in der Spalte "Austritt zum" kleiner als das aktuelle Datum ist.
Nach deiner Beispieldatei möchtest du die Zeilen übernehmen in denen bei Austrittsdatum nichts eingetragen ist oder &gt= dem aktuellen Datum ist.
Ich hab meine Vorschlag für das Makro mal angepasst.
Wenn du das ganze manuell lösen willst,dann musst du wie follgt vorgehen:
1. Markiere alle Daten im Blatt inklusive der Titelzeile.
2. Aktiviere im Menü "Daten" den Autofilter
3. Setze den Filter für die Spalte "Austrittsdatum" (Datumsfilter benutzerdefiniert)
Userbild
4. Wenn Nicht in allen Zeilen Namen eingetragen sind, dann setze zusätzlich den Filter für die Spalte "Name"
Userbild
5. Sortiere die Liste nach den Spalten Name und Vorname
Userbild
6. Markiere die Zellen, die kopiert werden sollen, kopiere die Zellen und füge die Daten im gewünschten Blatt ein.
7. Lösche in der Liste die Filter, sortiere die Liste nach der "M-Nr." und deaktiviere den AUtofilter wieder.
LG
Franz
'Makro in einem allgemeine Modul deiner persönlichen Makroarbeitsmappe einfügen
Sub prcMA_liste_Filtern_sortieren()
Dim wks As Worksheet, wksNeu As Worksheet
Dim rngData As Range
Dim spaDatum As Long
If MsgBox("Daten nach Eintrittsdatum filtern und sortiert in neues Blatt kopieren?", _
vbQuestion + vbOKCancel, "MA-Liste filtern") = vbCancel Then Exit Sub
Set wks = ActiveSheet
spaDatum = 7 'Spalte G
With wks
'AUtofilter einrichten
Set rngData = .UsedRange
If .AutoFilterMode = True Then
If .FilterMode = True Then
.ShowAllData
End If
.AutoFilterMode = False
End If
'Daten nach Austrittsdatum filtern (>= Heute ODER Leer)
rngData.AutoFilter Field:=spaDatum, Criteria1:=">=" & CLng(Date), _
Operator:=xlOr, Criteria2:=""
'Daten nach Name filtern ( Leer)
rngData.AutoFilter Field:=4, Criteria1:=""
'Daten nach Nachname, Vorname sortieren
rngData.Sort key1:=.Range("D1"), order1:=xlAscending, _
key2:=.Range("C1"), order2:=xlAscending, Header:=xlYes
End With
'Neues Tabellenblatt einfügen
ActiveWorkbook.Worksheets.Add after:=wks
Set wksNeu = ActiveSheet
'Gefilterte Daten kopieren
rngData.Copy
With wksNeu
'Spaltenbreiten übertragen
.Range("B1").PasteSpecial Paste:=xlPasteColumnWidths
'Daten einfügen
.Range("B1").PasteSpecial Paste:=xlPasteAll
End With
'Autofilter deaktivieren und Daten nach M-Nr. sortieren
With wks
Set rngData = .UsedRange
.ShowAllData
.AutoFilterMode = False
rngData.Sort key1:=.Range("B1"), order1:=xlAscending, Header:=xlYes
End With
End Sub

Anzeige
AW: hierzu ...
17.06.2020 12:25:34
Michael
Mist - die nächste Falle. Die mir zugeschickte Tabelle ist schreibgeschützt. Muss mich jetzt erst mal darum kümmern, dass der Verfasser den auflöst.Melde mich dann wieder
AW: hierzu ...
18.06.2020 08:39:14
Hajo_Zi
offen bedeutet es soll noch eine Antwort kommen.
Warum ist dein Beitrag Offen.
Du willst doch was machen. Soll jemand vorbei kommen?
Das ist nur meine Meinung zu dem Thema.

AW: exceltabelle autoamtisch umsortieren
13.06.2020 12:06:54
ralf_b
wenn du nur die Leute angezeigt haben willst, die mit der datumsbedingung übereinstimmen, dann sind das nur ein paar klicks mit sortieren und filtern in deinem menü.
1. zelle in der Tabelle markieren
2. Menü Daten auswählen, dann auf Sortieren
3. Spalte auswählen und bestätigen
4. Kopfzeile markieren, im Menü Daten auf Filtern klicken
5. entsprechenden filter auswählen und fertig
das geht sicher auch mit dem Makrorekorder zu automatisieren. nur muß dann auch die Datei umbenannt werden und ob die Markosicherheit dir einen strich durch die Rechnung macht ist noch offen.
Anzeige
AW: exceltabelle autoamtisch umsortieren
13.06.2020 12:23:02
fcs
Hallo Michael,
habe den manuellen Vorschlag von Michael mal in ein Makro umgesetzt.
zusätzlich werden die Daten in eine neues tabellenblatt kopiert und die Liste wieder nach den M-Nr. sortiert.
LG
Franz
'Makro in einem allgemeine Modul deiner persönlichen Makroarbeitsmappe einfügen
Sub prcMA_liste_Filtern_sortieren()
Dim wks As Worksheet, wksNeu As Worksheet
Dim rngData As Range
Dim spaDatum As Long
If MsgBox("Daten nach Eintrittsdatum filtern und sortiert in neues Blatt kopieren?", _
vbQuestion + vbOKCancel, "MA-Liste filtern") = vbCancel Then Exit Sub
Set wks = ActiveSheet
spaDatum = 7 'Spalte G
With wks
'AUtofilter einrichten
Set rngData = .UsedRange
If .AutoFilterMode = True Then
If .FilterMode = True Then
.ShowAllData
End If
.AutoFilterMode = False
End If
'Daten nach Austrittsdatum 

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige