Clever-Excel-Forum

Normale Version: gefundene werte in liste ausgeben...
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo, in Spalte B sind verschiedene Aufgaben eingetragen, welche den Personen in Spalte A zugewiesen sind. In Spalte D sind oder sollen dann Buttons sein mit den Aufgaben. Bei Klick auf einen dieser Buttons bräuchte ich irgendwie ne Aufstellung, welcher Arbeiter diese Tätigkeit macht, z.B. auf einer eigenen Form oder so... Ich weiß, das ist evtl. besser ne Datenbanksache, aber die Datei hab über 100 Blätter mit jeder Menge an Daten... (Siehe Beispielscreenshot). Bin für jede Hilfe dankbar!!!
heißt das alle blätter haben diesen Aufbau? 
willst du mit einem Knopfdruck alle Blätter durchsuchen?
Die verbundenen Zellen in Spalte A sind ein Problem. Damit geht die einfache Zuordnung Name Aufgabe flöten.
Wenn du  die verbundenen Zellen auftrennst und pro Zeile den entsprechenden Namen einträgst. kannst du ganz leicht dein Blatt filtern.
Hallo

mein Rat ist eine Mini Beispieldatei hochladen, das Übersichtblatt wie im Bild und 1-2 Tabellen mit den Personendaten. Das können Fantasiedaten sein,, Hauptsache wir erknnen den Tabellenaufbau. Die Spalten sollten überall gleich sein, die Zeilen können variabel sein.

Sinnvoll ist den Cursor auf den Namen stellen und dann den Button auslösen. Dann kann man per Makro alle Daten holen.
Wo bitte soll den das Ergebnis hingeschrieben werden und wie sol es aussehenn?? Wir können es nicht in die Luft schreiben!

mfg Gast 123
Hallo,

hier in Ermangelung einer Beispieldatei ein möglicher Ansatz zum weiteren Ausbau...

Code:

Option Explicit
Option Compare Text

Sub Suchen(sSuch As String)
' Sucht die Namen zu einer Tätigkeit zusammen
' Jeder Name wid nur einmal aufgenommen
  Dim WSh As Worksheet
  Dim sArr() As String
  Dim iZeile As Long, iOutZeile As Long
  Dim sName As String, sSchondrin As String

  If sSuch = "" Then Exit Sub
  ReDim Preserve sArr(iOutZeile)
  sArr(0) = sSuch
  iOutZeile = 1
  sSchondrin = ","

' Daten zusammensuchen
  For Each WSh In ThisWorkbook.Worksheets
      If WSh.Name Like "[TK]*" Then         ' Ggf. Einschränkung der Blätter
         For iZeile = 1 To WSh.Cells(WSh.Rows.Count, 2).End(xlUp).row
             With WSh.Cells(iZeile, "A")
                 If .Value <> "" Then sName = .Value
                 If sName <> "" And .Offset(, 1).Value Like sSuch Then
                    If InStr(sSchondrin, "," & sName & ",") = 0 Then
                       ReDim Preserve sArr(iOutZeile)
                       sArr(iOutZeile) = sName
                       sSchondrin = sSchondrin & sName & ","
                       iOutZeile = iOutZeile + 1
                    End If
                 End If
             End With
         Next iZeile
      End If
  Next WSh

' Ergebnisse ausgeben (<<<anpassen>>>
  ThisWorkbook.Sheets("Ergebnis").Range("B3").Resize(UBound(sArr) + 1, 1).Value _
             = Application.Transpose(sArr)
End Sub

Sub Test()
  Call Suchen("Putzen")
End Sub

_________
viele Grüße
Karl-Heinz
Hi,
vielen Dank für den Ansatz, konnte so mein Problem lösen Smile
vielen Dank!
Gruß Wurstl