Thema Datum  Von Nutzer Rating
Antwort
04.04.2016 19:41:36 Jörg
NotSolved
Blau Besonderheiten berücksichtigen
05.04.2016 08:38:00 Gast70117
NotSolved
05.04.2016 21:25:54 Jörg
NotSolved
05.04.2016 22:43:40 Gast70117
Solved

Ansicht des Beitrags:
Von:
Gast70117
Datum:
05.04.2016 08:38:00
Views:
989
Rating: Antwort:
  Ja
Thema:
Besonderheiten berücksichtigen
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngFilter As Range, c As Range
Dim lngDate As Long, strTarget As String
Dim arrFilter() As Variant, x As Long

'in Zeile 2 ?
If Intersect(Target, Range("B2:E2")) Is Nothing Then Exit Sub

'zu filternder Bereich nach Vorgabe ab "B3:E3" abwärts
Set rngFilter = Range(Cells(3, 2), Cells(Rows.Count, 2).End(xlUp))
Set rngFilter = rngFilter.Resize(rngFilter.Rows.Count, 4)

'Zelle leer ? oder
If Target.Value = "" Then
   If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData
Else
   'wo wurde
   Select Case Target.Column
      Case 2
         'einen Filter nach Teileingabe aufbauen
         ReDim arrFilter(1 To rngFilter.Columns(1).Cells.Count)
         strTarget = Trim(CStr(Target.Value))
         For Each c In rngFilter.Columns(1).Cells
            If InStr(CStr(c.Value), strTarget) > 0 Then
               x = x + 1
               arrFilter(x) = CStr(c.Value)
            End If
         Next c
         'jetzt filtern
         rngFilter.AutoFilter Field:=Target.Column - 1, _
         Criteria1:=Array(arrFilter), Operator:=xlFilterValues
      Case 3, 4
         'normal
         rngFilter.AutoFilter Field:=Target.Column - 1, Criteria1:=Target.Value
      Case 5
         'Datumsspalte nach gültigen Datum
         If IsDate(Target.Value) = False Then Exit Sub
         lngDate = CLng(Target.Value)
         rngFilter.AutoFilter Field:=Target.Column - 1, _
         Criteria1:=">=" & lngDate, _
         Operator:=xlAnd, Criteria2:="<" & lngDate + 1
   End Select
End If
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
04.04.2016 19:41:36 Jörg
NotSolved
Blau Besonderheiten berücksichtigen
05.04.2016 08:38:00 Gast70117
NotSolved
05.04.2016 21:25:54 Jörg
NotSolved
05.04.2016 22:43:40 Gast70117
Solved