Supportnet / Forum / Tabellenkalkulation
Suche nach Daten in einer Matrix
Frage
Hallo Gemeinde,
ich habe da mal wieder ein Problem mit Excel und hoffe ihr könnt mir dabei helfen.
Ich habe zwei Tabellen. In einer Tabelle stehen ein paar Namen zu denen immer verschiedene Daten eingespflegt sind.
z.B. - Tabelle I
A - B - C - D
Sa - 01.01. - Müller
So - 02.01. - Schneider
Mo - 03.01. - Bäcker
In der anderen Tabelle habe ich eine Matrix erstellt, wo zusätzliche Daten zu den Namen stehen.
z.B. - Tabelle II
A - B
Müller - Frau Dr. Müller
Schneider - Herr Dr. med. Schneider
Bäcker - Frau Dipl. Psychl. Bäcker
Ich möchte nun jetzt, das in Tabelle I Spalte D, steht ob dieser Name in der Matrix (Tabelle II, Spalte A)vorhanden ist. Wenn der Name vorhanden ist, soll die "Spalte D" leer bleiben. Wenn der Name nicht vorhanden ist, soll in "Spalte D" ein entsprechter Text (z.B. "Name nicht vorhanden") erscheinen.
Ist dieses möglich? Und wenn ja wie stelle ich das an?
Hoffe Ihr könnt mir dabei helfen. Ich danke euch schonmal im Vorraus.
mfg,
SportyBTU
Antwort 1 von coros
Hi SportyBTU,
kopiere nachfolgendes Makro in ein StandardModul und weise es einer Befehlsschaltfläche zu.
Bei dem Makro werden die Einträge aus Blatt "Tabelle1" Spalte C mit den Einträgen aus Blatt "Tabelle2" Spalte A verglichen. Wenn Übereinstimmungen gefunden werden, geschieht nichts. Wenn aber der Eintrag aus Blatt "Tabelle1" nicht in Blatt "Tabelle2" vorhanden ist, dann wird in Blatt "Tabelle1" in Spalte D in der gleichen Zeile wie der nicht gefundene Eintrag der Text "Name nicht vorhanden" hingeschrieben.
Ich hoffe, Du hast das so gmeint. Bei Fragen oder Problemen melde Dich.
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
kopiere nachfolgendes Makro in ein StandardModul und weise es einer Befehlsschaltfläche zu.
Option Explicit
Sub Namen_suchen()
Dim Wiederholungen As Long, Zeile_Tab1 As Long, Zeile_Tab2 As Long, _
Suchbegriff As String, Fundbegriff As Range, Addresse As String
Zeile_Tab1 = Sheets("Tabelle1").Range("C65536").End(xlUp).Row
Zeile_Tab2 = Sheets("Tabelle2").Range("A65536").End(xlUp).Row
For Wiederholungen = 2 To Zeile_Tab1
Suchbegriff = Sheets("Tabelle1").Cells(Wiederholungen, 3)
With Sheets("Tabelle2").Range("A2:A" & Zeile_Tab2)
Set Fundbegriff = .Find(What:=Suchbegriff, LookIn:=xlValues)
If Not Fundbegriff Is Nothing Then
Addresse = Fundbegriff.Address
Do
Set Fundbegriff = .FindNext(Fundbegriff)
Loop While Not Fundbegriff Is Nothing And Fundbegriff.Address <> Addresse
Else
Sheets("Tabelle1").Cells(Wiederholungen, 4) = "Name nicht vorhanden"
End If
End With
Next
End SubBei dem Makro werden die Einträge aus Blatt "Tabelle1" Spalte C mit den Einträgen aus Blatt "Tabelle2" Spalte A verglichen. Wenn Übereinstimmungen gefunden werden, geschieht nichts. Wenn aber der Eintrag aus Blatt "Tabelle1" nicht in Blatt "Tabelle2" vorhanden ist, dann wird in Blatt "Tabelle1" in Spalte D in der gleichen Zeile wie der nicht gefundene Eintrag der Text "Name nicht vorhanden" hingeschrieben.
Ich hoffe, Du hast das so gmeint. Bei Fragen oder Problemen melde Dich.
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von Aliba
Hi,
alternativ die Formellösung:
=WENN(ISTNV(VERGLEICH(C1;Tabelle2!A:A;0));"Name nicht vorhanden";"")
Wenn es bei gleichen Namen unterschiedliche Personen gibt, wird dies natürlich nicht berücksichtigt, da ja in Tabelle1 nur der Nachname steht.
CU Aliba
alternativ die Formellösung:
=WENN(ISTNV(VERGLEICH(C1;Tabelle2!A:A;0));"Name nicht vorhanden";"")
Wenn es bei gleichen Namen unterschiedliche Personen gibt, wird dies natürlich nicht berücksichtigt, da ja in Tabelle1 nur der Nachname steht.
CU Aliba
Antwort 3 von SportyBTU
Hallo Leutz,
da ich mich mit Makros nicht so auskenne, habe ich versucht das mit einer Formel irgendwie hinzubekommen - was dann zum Glück geklappt hat.
Man muss halt es lange ausprobieren - bis man zum Erfolg kommt.
Es war die gleiche Formel wie von Aliba, die ich dann irgendwann rausgefunden habe.
Trotzdem Danke für eure Hilfe.
SportyBTU
da ich mich mit Makros nicht so auskenne, habe ich versucht das mit einer Formel irgendwie hinzubekommen - was dann zum Glück geklappt hat.
Man muss halt es lange ausprobieren - bis man zum Erfolg kommt.
Es war die gleiche Formel wie von Aliba, die ich dann irgendwann rausgefunden habe.
Trotzdem Danke für eure Hilfe.
SportyBTU

