anbei eine Tabelle. Ich habe es soweit hinbekommen, das wenn die Tabelle gestartet wird, dass direkt in A1 der eingegebene Name erscheint. Nun soll sich die Tabelle automatisch Filtern Anhand des Namens. Also z.B.: wenn A1=Peter ist dann soll nur Abteilung AAA gezeigt werden.
nimm das Worksheet.Change-Event, zeichne dir den Autofilter mit dem Makro-Rekorder auf und ersetzte "Peter" durch Range("A1").Text.
VG Sabina
bei mir läuft Win 7 32-Bit - Office 2010 Pro Plus 32-Bit und Office 2016 Pro Plus 32-Bit
Wer auch weiter Hilfe erwartet, sollte sich nicht zu schade sein, ein kurzes Feedback zu geben.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" Then
If Target <> "" Then
If WorksheetFunction.CountIf(Columns(4), Range("A1").Value) = 0 Then
MsgBox "Suchbegriff " & Range("A1") & " ist nicht vorhanden."
Else
Range("A7:E" & Cells(Rows.Count, 4).End(xlUp).Row).AutoFilter Field:=4, Criteria1:=Range("A1")
End If
End If
End If
End Sub
ich glaube da habe ich mich nicht richtig ausgedrückt. Der Name in Zelle a1 hat nichts mit dem Namen in der Tabelle zu tun.
Also gehen wir davon aus, dass a1 der name des Vorgesetzten ist und in der Tabelle sind alle Daten der Mitarbeiter. Wenn nun Peter in a1 steht soll nur die Abteilung von Peter angezeigt werden.
wir sind ganz nah dran.
Jetzt fehlt nur noch, dass sich die Tabelle auch so in dieser Art Filtern lässt für mehrere Werte in Zelle A1. Die Tabelle auf die es angewendet werden soll hat ca. 5000 Datensätze mit ca. 100 Vorgesetzten (das Einpflegen wird mühsam, ist mir bewusst ). Ich bräuchte daher ein Makro wo ich relativ einfach Namen des Vorgesetzten und die dazugehörige Abteilung eintragen kann.
dein jetziges Makro ist sehr nah dran an dem was ich genau so Suche. Schon mal dafür tausend Dank!