Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Liste mit Werten in anderer Liste suchen

Liste mit Werten in anderer Liste suchen
02.12.2019 09:11:17
Nico264
Hallo liebes Forum,
ich bin absoluter Neuling in VBA und brauch deshalb eure Hilfe.
Ich habe 2 Listen mit Werten in zwei Tabellenblättern. In Tabellenblatt 1 habe ich 155 Werte die zb so aussehen: 50024382.
In Tabellenblatt 2 habe ich eine Tabelle mit 55 Zeilen. In Spalte A stehen Werte wie: 50024382 und diesen Nummern wird in Spalte E jeweils ein Preis zugeordnet.
Nun will ich das jeder Wert von Liste 1 in Spalte A von Liste 2 gesucht wird, und bei einem Treffer die Spalte E der jeweiligen Zeile dem gesuchten Wert in Liste 1 zugeordnet wird ( auch in Spalte E schreiben)
Ich stelle mir das so vor:
Liste 1:
50024382
Liste 2: Preis
50024357 5€
50024361 7€
50024382 100€
Ergebnis Liste 1:
50024382 100€
Wenn möglich sollte auch das Format von Spalte E kopiert werden, da es hier verschiedene Währungen gibt.
Mein Ansatz bis jetzt sieht so aus und hat bei einer Probeliste mit 5 Werten perfekt funktioniert, aber wenn ich die restlichen Werte eingesetzt habe, hat es mir nur zu einem Wert den passenden Prei eingefügt
.
Sub Preis_uebertragen()
Dim z, y As Integer
For z = 1 To 155
For y = 1 To 55
If Sheets("Tabelle 1").Cells(z, 1) = Sheets("Tabelle 2").Cells(y, 1) Then
Sheets("Tabelle 1").Cells(z, 5) = Sheets("Tabelle 2").Cells(y, 5)
End If
Next y
Next z
End Sub

Ich bin für jede Mögliochkeit offen. Sverweis klappt meines Wissens nicht, das es sich um mehrere Tabellenblätter handelt.
Danke !
Gruß Nico
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Liste mit Werten in anderer Liste suchen
02.12.2019 09:31:59
ede
Hallo Nico,
das sollte mit sverweis ohne Probleme funktionieren, siehe Beispiel:

=SVERWEIS(A2;Tabelle2!$A$1:$E$155;5;0)

gruss
ede
AW: Liste mit Werten in anderer Liste suchen
02.12.2019 09:58:40
Nico264
Hi ede,
Danke für deine schnelle Antwort.
Ich habe jetzt das Problem gefunden, weshalb der Sverweis uhd mein Code zunächst nicht geklappt haben - die Zaheln in Liste 1 waren als Text Formatiert. Deshalb hat es nicht geklappt
Danke dir !
Anzeige
AW: Liste mit Werten in anderer Liste suchen
02.12.2019 10:11:48
Nico264
Hallo zusammen,
Der Code läuft jetzt, aber weiß jemand was ich anpassen muss damit auch das Format von Spalte E übertragen wird und nicht nur der Inhalt? Also zb auch das Dollar oder Yen zeichen usw
Danke und Gruß
Nico
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Werte in einer anderen Excel-Tabelle suchen und übernehmen


Schritt-für-Schritt-Anleitung

  1. Vorbereitung der Daten: Stelle sicher, dass Du zwei Tabellenblätter hast – eines mit den Werten, die Du suchen möchtest (Tabelle 1), und das andere mit den Werten, die Du abgleichen möchtest (Tabelle 2).

  2. Datenformat überprüfen: Achte darauf, dass die Werte in Tabelle 1 und Tabelle 2 im gleichen Format vorliegen (z.B. Zahlen vs. Text). Wenn Du Zahlen hast, die als Text formatiert sind, kann dies zu Problemen führen.

  3. Formel anwenden: Nutze die SVERWEIS-Funktion, um den Wert aus Tabelle 2 in Tabelle 1 zu suchen. Die Formel sieht folgendermaßen aus:

    =SVERWEIS(A2;Tabelle2!$A$1:$E$155;5;0)

    Hierbei steht A2 für den Wert, den Du suchst, und die zweite Tabelle für den Bereich, in dem gesucht wird.

  4. Formatierung kopieren: Um die Formatierung von Spalte E zu übernehmen, kannst Du VBA verwenden. Hier ein Beispiel für einen VBA-Code:

    Sub Preis_uebertragen()
       Dim z, y As Integer
       For z = 1 To 155
           For y = 1 To 55
               If Sheets("Tabelle 1").Cells(z, 1) = Sheets("Tabelle 2").Cells(y, 1) Then
                   Sheets("Tabelle 1").Cells(z, 5) = Sheets("Tabelle 2").Cells(y, 5)
                   Sheets("Tabelle 1").Cells(z, 5).NumberFormat = Sheets("Tabelle 2").Cells(y, 5).NumberFormat
               End If
           Next y
       Next z
    End Sub

    Dieser Code sucht die Werte aus Tabelle 1 in Tabelle 2 und überträgt sowohl den Preis als auch die Formatierung.


Häufige Fehler und Lösungen

  • Problem: #NV-Fehler in SVERWEIS

    • Lösung: Überprüfe, ob die gesuchten Werte im richtigen Format vorliegen. Zahlen, die als Text formatiert sind, können nicht gefunden werden.
  • Problem: Nur ein Wert wird gefunden.

    • Lösung: Stelle sicher, dass Du nicht überlappende Bereiche in den Tabellen verwendest und dass die Schleifen in Deinem VBA-Skript korrekt sind.

Alternative Methoden

  • INDEX und VERGLEICH: Eine Kombination aus INDEX und VERGLEICH kann eine leistungsfähige Alternative zu SVERWEIS sein, vor allem, wenn Du in einer anderen Tabelle suchen möchtest.
    =INDEX(Tabelle2!E:E;VERGLEICH(A2;Tabelle2!A:A;0))
  • Power Query: Wenn Du häufig mit großen Datenmengen arbeitest, erwäge die Verwendung von Power Query, um Daten aus mehreren Tabellen zu kombinieren und zu transformieren.

Praktische Beispiele

  • Beispiel 1: Du hast eine Liste von Produkten und deren Preise in zwei verschiedenen Tabellenblättern. Mit SVERWEIS kannst Du die Preise schnell abgleichen und in die Haupttabelle übernehmen.
  • Beispiel 2: Du möchtest die Daten aus einer Tabelle gegen eine andere Tabelle abgleichen, um eventuelle Diskrepanzen zu finden. Nutze INDEX und VERGLEICH, um effizienter zu arbeiten.

Tipps für Profis

  • Daten validieren: Nutze die Datenüberprüfung in Excel, um sicherzustellen, dass die Eingabewerte dem richtigen Format entsprechen.
  • VBA-Optimierung: Achte darauf, dass Deine Schleifen möglichst effizient sind, um die Laufzeit Deines VBA-Codes zu minimieren.

FAQ: Häufige Fragen

1. Wie kann ich einen Wert in einer anderen Tabelle suchen?
Du kannst die SVERWEIS-Funktion verwenden, um einen Wert in einer anderen Tabelle zu suchen und zu übernehmen.

2. Was tun, wenn die Werte in unterschiedlichen Formaten vorliegen?
Stelle sicher, dass die Werte in beiden Tabellen im gleichen Format vorliegen. Du kannst die Funktion WERT verwenden, um Text in Zahlen umzuwandeln.

3. Kann ich auch mehrere Werte gleichzeitig suchen?
Ja, durch die Verwendung von Schleifen in VBA kannst Du mehrere Werte in einer anderen Tabelle suchen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige