Microsoft Excel

Herbers Excel/VBA-Archiv

Zeilen filtern

Betrifft: Zeilen filtern von: Niko
Geschrieben am: 22.02.2008 09:37:29

Hallo,

ich habe folgendes Problem:
In der ersten Spalte habe ich eine Teilnehmerliste und in den folgenden Spalten ein Reihe von Terminen.
Jedem Teilnehmer wird zum jedem Termin ein Status zugeordnet.
Ist es möglich, dass ich über ein Drop Down Menü die Zeile mit den Terminen filtern kann, so dass ich zum gewählten Termin die Teilnehmer und deren Status sehen kann und die anderen Termine ausgeblendet bleiben?
Um mein Problem besser darzustellen habe ich eine Beispiel-Datei angehängt.

https://www.herber.de/bbs/user/50098.xls

Vielen Dank im Voraus

Niko

  

Betrifft: AW: Zeilen filtern von: Nepumuk
Geschrieben am: 22.02.2008 09:45:54

Hallo Niko,

und wo in der Tabelle soll sich das Dropdown befinden?

Gruß
Nepumuk


  

Betrifft: AW: Zeilen filtern von: Niko
Geschrieben am: 22.02.2008 09:50:14

Hallo Nepumuk,

am besten in Zelle B1.

Gruß

Niko


  

Betrifft: AW: Zeilen filtern von: Nepumuk
Geschrieben am: 22.02.2008 10:18:46

Hallo Niko,

so? https://www.herber.de/bbs/user/50102.xls

Gruß
Nepumuk


  

Betrifft: AW: Zeilen filtern von: Niko
Geschrieben am: 22.02.2008 10:45:04

Hallo Nepumuk,

super! Genauso hab ich mir das vorgestellt.
Hab nur ein kleines Problem bekommen:
Ich muss diese Funktion zusätzlich in ein anderes Formular einfügen in dem das Scroll Down Menü in Zelle E11 sitzt und die Termine in Zeile 15 ab Spalte G eingfügt werden.
Eigentlich war ich überzeugt ich bekomm das selbst hin in dem ich einfach die Zuordnung im Code verändere, leider bekomme ich eine Fehlermeldung Laufzeitfehler '13' Typen unverträglich für die Zeile ReDim strArray(0 To UBound(vntArray, 2)).
Vielleicht steh ich auch bloss auf dem Schlauch - aber wenn du mir nochmals helfen könntest wär das klasse.

Danke und viele Grüße

Niko


  

Betrifft: AW: Zeilen filtern von: Nepumuk
Geschrieben am: 22.02.2008 11:08:02

Hallo Niko,

na ein bisschen mehr muss schon angepasst werden.

' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_Open()
    Call prcCreate_Validation
End Sub

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim objCell As Range
    If Target.Address = "$E$11" Then
        If Target.Value = "" Or Target.Value = "Alle" Then
            Me.Columns.Hidden = False
        Else
            Set objCell = Me.Rows(15).Find(What:=Target.Value)
            If Not objCell Is Nothing Then
                Range(Cells(15, 7), Cells(15, Columns.Count). _
                    End(xlToLeft)).EntireColumn.Hidden = True
                objCell.EntireColumn.Hidden = False
            End If
        End If
    ElseIf Target.Row = 15 Then
        Call prcCreate_Validation
    End If
End Sub

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Sub prcCreate_Validation()
    Dim vntArray As Variant
    Dim strArray() As String
    Dim lngIndex As Long, lngCounter As Long
    With Tabelle1
        vntArray = .Range(.Cells(15, 7), .Cells(15, .Columns.Count).End(xlToLeft)).Value
        Redim strArray(0 To UBound(vntArray, 2))
        strArray(0) = "Alle"
        For lngIndex = LBound(vntArray, 2) To UBound(vntArray, 2)
            lngCounter = lngCounter + 1
            strArray(lngCounter) = vntArray(1, lngIndex)
        Next
        Application.EnableEvents = False
        .Cells(11, 5).ClearContents
        Application.EnableEvents = True
        With .Cells(11, 5).Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(strArray, ",")
        End With
    End With
End Sub

Gruß
Nepumuk


  

Betrifft: AW: Zeilen filtern von: Niko
Geschrieben am: 22.02.2008 11:38:44

Hallo mal wieder,

leider läuft es immer noch nicht. Ich bekomm wieder den Fehler:

Laufzeitfehler '13' Typen unverträglich für die Zeile
ReDim strArray(0 To UBound(vntArray, 2))

Ich hoffe ich strapazier deine Geduld nicht zu stark

Gruß

Niko


  

Betrifft: AW: Zeilen filtern von: Nepumuk
Geschrieben am: 22.02.2008 11:46:36

Hallo Niko,

ich hab das Programm nach deinen Angaben geändert, getestet und für gut befunden. Wenn's nicht läuft, dann waren die Angaben falsch, oder in der Mappe ist noch kein Datum drin. Das habe ich nicht abgefangen.

Gruß
Nepumuk


  

Betrifft: AW: Zeilen filtern von: Niko
Geschrieben am: 22.02.2008 11:52:17

Hallo Nepumuk,

bei mir läufts jetzt auch. War eine falsche Angabe von mir. In meiner Mappe war kein Datum drin.

Nochmals vielen Dank und viele Grüße

Niko


 

Beiträge aus den Excel-Beispielen zum Thema "Zeilen filtern"