Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Kundennummer vergleichen

Kundennummer vergleichen
Heike
Hallo,
benötige mal wieder eure Hilfe!
In Tabelle 1 sind in Spalte A Kundennummern in B Vorname und in C Nachname.
In Tabelle 2 möchte ich nun genau diese Daten übertragen! Aaaaber, jetzt kommt der Knackpunkt:
In Tabelle 1 werden Kunden gelöscht, verändert, zugefügt ... in Tabelle 2 sollen aber die Daten nicht verknüpft sein, so dass hier die Änderungen nicht durchgeführt werden. Und, werden in Tabelle 1 neue Kunden erfasst, soll die Tabelle 2 diese neu erfassten auch wieder übernehmen (Abgleich anhand der Kundennummer in A). Als Ergebnis wird die Tabelle 2 natürlich immer größer aber ich habe immer die "Originale".
Habt ihr eine Lösung für mich? Wäre wirklich klasse und vielen Dank schon mal im voraus.
Gruß
Heike
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Kundennummer vergleichen
28.02.2011 22:02:06
Martin
Hallo Heike,
ich bin leider kein Formel-Profi, aber mit Sicherheit ist dein Problem ohne VBA nicht lösbar. Formeln müssen ihre Daten irgendwo herbeziehen. Also wenn die Quelldaten in Tabelle1 gelöscht werden, dann sind diese für die Formeln in Tabelle2 nicht mehr abrufbar. Mit Makros hingegen könntest du mit einem "Worksheet_SelectionChange"-Makro oder einem "Worksheet_Change"-Makro in Tabelle1 sollte es kein größeres Problem darstellen.
Viele Grüße
Martin
Anzeige
AW: Kundennummer vergleichen
28.02.2011 22:16:46
Heike
Hallo Martin,
ja, das habe ich mir schon gedacht, da mit Formeln ja auch Verknüpfungen bestehen. Na ja, programmieren kann ich nicht, aber immerhin weiß ich, wie ich in den Editor komme und auch kleine Änderungen kann ich schon vornehmen :-))) Dank dieses Forums.
Vielleicht, wenn du Lust hast, und es nicht sooooo aufwendig ist ... könntest du mir ein "Change-Macro" schreiben? Wäre super ;-)
Gruß
Heike
Anzeige
AW: Kundennummer vergleichen
28.02.2011 22:28:43
Ramses
Hallo
Warum eine aufwändige Programmierung die mit einigen Tücken durchsetzt ist die nicht einfach zu lösen sind.
Mach doch alles auf einer Tabelle.
Füge deiner Datenbank eine weitere Spalte zu: "Gelöscht"
Wenn du nun einen Datensatz löschen willst, dann markierst du die Zelle mit einem "x" und filterst anschliessend erneut mit dem Autofilter "leere Zellen"
Ohne Programmierung und auch von dir ganz einfach durchzuführen
Gruss Rainer
Anzeige
AW: Kundennummer vergleichen
28.02.2011 22:38:38
Heike
Hallo Rainer,
danke für deine Antwort.
Es müssen aber 2 Tabellenblätter sein, da Tabelle1 immer wieder geändert wird und Tabelle2 im Original plus neue Datensätze aus Tabellenblatt1 vorhanden sein muss.
Gruß
Heike
AW: Kundennummer vergleichen
28.02.2011 22:52:05
Ramses
Hallo
Dann musst du warten bis dir das jemand macht.
Wozu das ganze ? Wenn Änderungen gemacht werden, oder müssen, dann hat das doch seinen Grund ?
Wozu brauchst du dann noch die alten unbrauchbaren Daten ?
Wenn du eine sicherung willst, dann mach ein backup der Datei, das ist sicherer.
Gruss Rainer
Anzeige
AW: Kundennummer vergleichen
28.02.2011 23:05:22
mpb
Hallo Heike,
ich gehe davon aus, dass die Nummern in Spalte A eindeutig sind. Füge in der ersten Tabelle eine Hilfsspalte ein, z.B. Spalte D. Füge dort in der ersten Zeile (sinngemäß) folgende Formel ein:
=SVERWEIS(A1;Tabelle2!A:C;1;0)
Ziel ist es, zu überprüfen, ob die Nummern in Tabelle 1 in Deinem "Archiv" in Tabelle 2 in Spalte A vorkommen. Falls das nicht der Fall ist, liefert die Formel einen Fehler #NV. Alle Zeilen, die in Spalte D diesen Fehler haben, sollen nun in die Tabelle 2 kopiert werden. Dies erledigt folgendes Makro:
Sub Archivieren()
Set Tab1 = Worksheets("Tabelle1") 'Tabellennamen anpassen
Set Tab2 = Worksheets("Tabelle2") 'Tabellennamen anpassen
z = Tab2.Range("A65536").End(xlUp).Row + 1
Tab1.Columns("D:D").SpecialCells(xlCellTypeFormulas, 16).EntireRow.Copy Destination:=Tab2.Cells( _
z, 1) 'Spalte D ggf. anpassen
Tab2.Columns("D:IV").Delete
End Sub
Gruß
Martin
Anzeige
Funktioniert :-)
01.03.2011 14:20:20
Heike
Hallo Martin,
sorry, dass ich soooo spät antworte!
Dein Makro ist ja klasse, funktioniert einwandfrei. Vielen Dank.
Auch danke an Ramses und WF.
Wünsche allen noch einen schönen Tag
Heike
halbmanuell
28.02.2011 23:53:42
WF
Hi,
nimm diese Formel:
http://www.excelformeln.de/formeln.html?welcher=84
Das Ergebnis klatschst Du dann mit Inhalte einfügen / Werte in Deine Gigatabelle.
Bei den nächsten Änderungen: dito
Salut WF
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Kundennummer vergleichen: So überträgst Du Daten zwischen Excel-Tabellen


Schritt-für-Schritt-Anleitung

  1. Daten in Tabelle 1 vorbereiten: Stelle sicher, dass Deine Kundennummern in Spalte A, Vornamen in Spalte B und Nachnamen in Spalte C sind.

  2. Hilfsspalte hinzufügen: Füge in Tabelle 1 eine Hilfsspalte (z.B. Spalte D) hinzu. In der ersten Zeile dieser Spalte fügst Du folgende Formel ein:

    =SVERWEIS(A1;Tabelle2!A:C;1;0)

    Diese Formel überprüft, ob die Kundennummer in Tabelle 2 vorhanden ist.

  3. Makro erstellen: Öffne den VBA-Editor (Alt + F11) und füge folgendes Makro ein:

    Sub Archivieren()
       Set Tab1 = Worksheets("Tabelle1") 'Tabellennamen anpassen
       Set Tab2 = Worksheets("Tabelle2") 'Tabellennamen anpassen
       z = Tab2.Range("A65536").End(xlUp).Row + 1
       Tab1.Columns("D:D").SpecialCells(xlCellTypeFormulas, 16).EntireRow.Copy Destination:=Tab2.Cells(z, 1) 'Spalte D ggf. anpassen
       Tab2.Columns("D:IV").Delete
    End Sub
  4. Makro ausführen: Führe das Makro aus, um die neuen Daten aus Tabelle 1 in Tabelle 2 zu übertragen.

  5. Ergebnisse überprüfen: Überprüfe, ob die Daten in Tabelle 2 korrekt übertragen wurden.


Häufige Fehler und Lösungen

  • Fehler #NV in SVERWEIS: Dies bedeutet, dass die Kundennummer nicht in Tabelle 2 gefunden wurde. Überprüfe die Eingaben in beiden Tabellen.

  • Makro funktioniert nicht: Stelle sicher, dass die Tabellennamen korrekt sind und dass Du das Makro im richtigen Modul eingefügt hast.

  • Daten nicht aktualisiert: Wenn Änderungen in Tabelle 1 nicht in Tabelle 2 erscheinen, stelle sicher, dass Du das Makro nach jeder Änderung ausführst.


Alternative Methoden

  • Formel-basierte Lösung: Du kannst auch die Formel =WENNFEHLER(SVERWEIS(A1;Tabelle2!A:C;1;0);"Nicht gefunden") verwenden, um die fehlenden Kundennummern zu identifizieren und diese manuell zu übertragen.

  • Power Query: Eine weitere Möglichkeit wäre die Verwendung von Power Query, um die Daten aus Tabelle 1 in Tabelle 2 zu importieren und dabei die Änderungen in Echtzeit zu verfolgen.


Praktische Beispiele

  • Beispiel 1: Angenommen, in Tabelle 1 sind die Kundennummern 101, 102, 103. Wenn in Tabelle 2 nur 101 und 103 vorhanden sind, wird durch das Makro die Kundennummer 102 hinzugefügt, da sie in Tabelle 1 neu ist.

  • Beispiel 2: Wenn Du eine Liste mit "gelöschten" Kundennummern führst, kannst Du diese in einer separaten Spalte vermerken und die Daten sortieren, um eine Übersicht zu behalten.


Tipps für Profis

  • Makros optimieren: Du kannst das Makro erweitern, um auch Daten zu löschen, die in Tabelle 1 nicht mehr vorhanden sind, indem Du eine zusätzliche Logik hinzufügst.

  • Automatisierung: Überlege, ob Du das Makro so anpassen kannst, dass es automatisch beim Öffnen der Datei oder beim Ändern von Daten in Tabelle 1 ausgeführt wird.

  • Sicherungskopie: Erstelle regelmäßig Sicherungskopien Deiner Excel-Dateien, um Datenverlust zu vermeiden.


FAQ: Häufige Fragen

1. Wie kann ich die Kundennummer in Excel erstellen?
Du kannst die Kundennummer in einer Spalte manuell eingeben oder eine Formel verwenden, um sie automatisch zu erzeugen, z.B. mit einer Formel, die auf einer ID basiert.

2. Was mache ich, wenn das Makro nicht funktioniert?
Überprüfe, ob Du die richtigen Tabellennamen verwendest und ob die Sicherheitsoptionen für Makros in Excel korrekt eingestellt sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige