Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Alle Datensätze >= Eingabewert filtern

Gruppe

Change

Problem

Wie kann ich alle Datensätze, deren Wert in der Eingabespalte >= der aktuellen Eingabe ist, in ein zweites Tabellenblatt filtern?

Lösung
Geben Sie den Ereigniscode in das Klassenmodul des Arbeitsblattes ein.

ClassModule: Tabelle11

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
   Dim iRow As Integer, iRowL As Integer
   If Target.Column <> 1 Then Exit Sub
   If IsEmpty(Target) Then Exit Sub
   If Not IsNumeric(Target.Value) Then Exit Sub
   iRow = 2
   Do Until IsEmpty(Cells(iRow, 1))
      If Cells(iRow, 1).Value >= Target.Value And _
         iRow <> Target.Row Then
         With Worksheets("Tabelle2")
            iRowL = .Cells(Rows.Count, 1).End(xlUp).Row + 1
            .Range(.Cells(iRowL, 1), .Cells(iRowL, 4)).Value = _
            Range(Cells(iRow, 1), Cells(iRow, 4)).Value
         End With
      End If
      iRow = iRow + 1
   Loop
End Sub