AW: Dynamisch sortieren?
08.07.2005 10:59:03
Harald
Hi Vic,
sorry, hat etwas gedauert.
Teste die Sache erstmal an einer Kopie !!!!
Wegen der Sortierung solltest Du in Spalte A e für erledigt und z.B. o für offen eintragen.
Bedingte Formatierung auf o ( rote Zelle und wenn du rote Schrift anwählst, ist das o auch nicht zu sehen)
So...geht los ;-))
2 Möglichkeiten
1.
-rechte Maustaste auf den betreffenden Tabellenreiter links unten (z.B. Tabelle1)
-Code anzeigen
-untenstehenden Code ins große, weiße rechte Code-Fenster kopieren
2.
-Alt+F11
-links oben im Projektexplorer deine Mappe aufklicken und das betreffende Blatt aufklicken
- Code ins große, weiße rechte Code-Fenster kopieren
Zurück ins Blatt, speichern...fertich.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range
'Ausstiegskriterien
If Target.Row < 2 Or Target.Count > 1 Or Target.Column > 1 Then Exit Sub
If Target.Value <> "e" Then Exit Sub
'Gültigkeitsbereich
Set RaBereich = Range("A2:A50")
'unerwünschte Aktionen ausschließen
Application.EnableEvents = False
'Datum nach Spalte E
If Not Intersect(Target, RaBereich) Is Nothing Then
Target.Offset(0, 4) = Date
End If
Application.EnableEvents = True
Set RaBereich = Nothing
'sortieren
Range("A1:I50").Sort Key1:=Range("A2"), Order1:=xlDescending, Key2:=Range( _
"E2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase _
:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
DataOption2:=xlSortNormal
End Sub
Es handelt sich um eine Ereignisprozedur die nur in "ihrem" Blatt ausgelöst werden kann.
Auslöser in diesem Fall, ist ein Eingabeprozess.
Der Code steigt aus, wenn
- Eingabe in erster Zeile oder nicht in erster Spalte
- mehr als eine Zelle aktiviert ist
- kein e eingetragen wird
Aktion:
Datumseintrag in gleicher Zeile aber 4 Spalten weiter (Spalte E)
Sortiert "e" Einträge nach unten (neuestes Tagesdatum in letzte Zeile(n) )
Na...hoffentlich klappts ;-))
Kleiner Tipp, ob der Chef nen vba-Kurs zahlt oder nicht, nimm dir die Excel-CD von Herber.
Bin kein Werbeträger oder so. Ich finde diese CD deckt einiges ab.
Gruß
Harald