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

VBA Vergleichen und Einfügen

VBA Vergleichen und Einfügen
22.05.2017 05:43:35
Ralph
Morgen Zusammen
Ich habe folgendes Problem. In dem Tabellenblatt "Übersicht letzter Besuch" in der Spalte B ab der 2. Zeile, möchte ich die Spalte B ab der 2. Zeile in dem Tabellenblatt "Hauptdaten" vergleichen und bei Übereinstimmung die KD Nr. von der Spalte A "Hauptdaten" in die Spalte A "Übersicht letzter Besuch" einfügen.
Besten Dank für Eure Hilfe
Grüsse Ralph

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Vergleichen und Einfügen
22.05.2017 05:49:11
Hajo_Zi
=wenn(b2=Hauptdaten!B2;Hauptdaten!A2;"keine Angabe")

AW: VBA Vergleichen und Einfügen
22.05.2017 05:52:25
Ralph
Morgen Hajo
Sorry habe mich wohl nicht ganz klar ausgedürckt. Ich möchte gerne die KD Nr. fix in die Zelle schreiben, da ich eine Veränderung der Tabelle anstrebe und dies nicht anders geht. Das heisst in der Spalte A "Haupdaten" sollte nachher nur die KD NR. stehen und dies ohne Formel. Ich dachte da an einen VBA Code.
Was meinst Du?
Gruss Ralph
AW: VBA Vergleichen und Einfügen
22.05.2017 06:09:52
Hajo_Zi
mein Ansatz war also richtig.
Option Explicit
Sub Kopieren()
Dim LoLetzte As Long
Dim LoI As Long
' Zieltabelle aktiv
With Worksheets("Tabelle2")
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 2)), .Cells(Rows.Count, 2).End(xlUp).Row, . _
Rows.Count)
For LoI = 2 To LoLetzte
If .Cells(LoI, 2) = Cells(LoI, 2) And .Cells(LoI, 2)  "" Then
Cells(LoI, 1) = .Cells(LoI, 1)
End If
Next
End With
End Sub
falls Du jetzt die Aufgabe änderst bin ich raus. Da schon 2 Lösungen erstellt.
Gruß Hajo
Anzeige
AW: VBA Vergleichen und Einfügen
22.05.2017 06:19:25
Ralph
Hoi Hajo
Danke für die schnelle Antwort. Der Gedanke war schon richtig von Dir. Ich habe es ausprobiert und leider passiert hier nix. Also zu meinem vorgehen. Ich bin auf dem Tabellenblatt "Übersicht letzter Besuch" und habe das Makro aktiviert.
Bei With Worksheets("Tabelle2") habe ich Tabelle 2 durch Hauptdaten ersetzt.
Wo habe ich den Fehler gemacht?
Gruss Ralph
AW: VBA Vergleichen und Einfügen
22.05.2017 17:16:00
Hajo_Zi
keine Ahnung bei mir geht es.
Deine Datei sehe ich auch nicht.
Aber wie schon geschrieben ich bin raus.
Da ich vermute Du hast die Aufgabe falsch beschrieben. Aber ich halte mich an das was im Beitrag steht.
Gruß Hajo
Anzeige
AW: VBA Vergleichen und Einfügen
23.05.2017 14:36:39
Ralph
Hallo Zusammen
Ich habe mal eine Excel Liste raufgeladen. Die Kundennamen habe ich durch Zahlen ersetzt. Hilft mir noch jemand?
https://www.herber.de/bbs/user/113748.xlsx
Danke
Gruss Ralph
AW: VBA Vergleichen und Einfügen
23.05.2017 14:36:39
Ralph
Hallo Zusammen
Ich habe mal eine Excel Liste raufgeladen. Die Kundennamen habe ich durch Zahlen ersetzt. Hilft mir noch jemand?
https://www.herber.de/bbs/user/113748.xlsx
Danke
Gruss Ralph
AW: VBA Vergleichen und Einfügen
24.05.2017 15:41:48
Werner
Hallo Ralph,
Option Explicit
Public Sub Übertrag_KdNummer()
Dim loLetzte As Long
Dim raBereich As Range
With Sheets("Übersicht letzter Besuch")
loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Row
Set raBereich = .Range(.Cells(2, 1), .Cells(loLetzte, 1))
raBereich.FormulaLocal = "=WENN(B2=Hauptdaten!B2;Hauptdaten!A2;""keine Angabe"")"
raBereich.Value = raBereich.Value
End With
Set raBereich = Nothing
End Sub
Gruß Werner
Anzeige
AW: VBA Vergleichen und Einfügen
24.05.2017 21:26:56
Ralph
Hallo Werner
Besten Dank für deine Hilfe. Leider funktioniert es bei der Original Tabelle nicht. Dort habe ich Firmennamen drin oder hat es mit irgend einem Filter zu tun? Bei der Tabelle welche ich Dir gesendet habe funktioniert es tadellos.
Gruss Ralph
AW: VBA Vergleichen und Einfügen
24.05.2017 21:50:14
Werner
Hallo Ralph,
dann liegt das wohl an deinen Daten, zu denen kann ich aber nichts sagen. Es ist egal ob da jetzt Zahlen oder Texte in den Zellen stehen. Die Schreibweise muss halt übereinstimmen. Kann es sein, dass du deine Firmennamen von einer externen Quelle importierst? Dann könnte es z.B. sein, dass am Anfang oder am Ende ein Leerzeichen vorhanden ist. Das führt dann dazu, dass es keine Übereinstimmung gibt.
Schreib in deiner Originaldatei im Blatt Hauptdaten testweise mal den Namen der ersten Firma von Hand in die Zelle B2. Jetzt kopierst du den Firmennamen aus dem Blatt Hauptdaten Zelle B2 ins Blatt Übersicht letzter Besuch ebenfalls in Zelle B2. Lass jetzt das Makro nochmal laufen.
Gruß Werner
Anzeige
AW: VBA Vergleichen und Einfügen
25.05.2017 07:36:37
Ralph
Morgen Werner
Ich hoffe Du verlierst nicht langsam die Nerven mit mir. Ich habe es ausprobiert nun glaube ich den Fehler gefunden zu haben. Die Listen der Kundennamen sind nicht der Reihe nach. Wenn ich etwas suchen müsste ginge ich über den SVERWEIS.
Gruss Ralph
AW: VBA Vergleichen und Einfügen
25.05.2017 08:52:30
Werner
Hallo Ralph,
also mit dem SVERWEIS geht bei deiner Datenstruktur nichts. Der SVERWEIS kann nur nach rechts suchen und nicht nach links.
Frage: Kannst du deine Daten im Blatt Hauptdaten anders anordnen? Spalte A=Firma, Spalte B=Firma2, Spalte C=Kundennummer. Wenn ja, dann könnte man das über den SVERWEIS machen.
Zusatzfrage: Kommen die Firmennamen im Blatt Namensliste und/oder im Blatt Übersicht letzter Besuch mehrfach vor?
Ansonsten könnte man über die Find Methode suchen.
Gruß Werner
Anzeige
AW: VBA Vergleichen und Einfügen
25.05.2017 09:18:23
Ralph
Hallo Werner
Ja, die Namen kommen pro Blatt nur einmal vor. Wenn es geht möchte das ich die Spalten belassen, wenn es nicht anders geht verändere ich die Reihenfolge. Dies gibt für mich bei 10 verschiedenen Arbeitsmappen, jedoch einen massiven mehr aufwand, darum möchte ich diese belassen.
Gruss Ralph
AW: VBA Vergleichen und Einfügen
25.05.2017 09:44:17
Werner
Hallo Ralph,
dann mit einer INDEX / VERGLEICH Formel:
Option Explicit
Public Sub Übertrag_KdNummer()
Dim loLetzte As Long
Dim raBereich As Range
With Sheets("Übersicht letzter Besuch")
loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Row
Set raBereich = .Range(.Cells(2, 1), .Cells(loLetzte, 1))
raBereich.FormulaLocal = _
"=WENNFEHLER(INDEX(Hauptdaten!A:A;VERGLEICH(B2;Hauptdaten!B:B;0));""keine Angaben"")"
raBereich.Value = raBereich.Value
End With
Set raBereich = Nothing
End Sub
Gruß Werner
Anzeige
AW: VBA Vergleichen und Einfügen
25.05.2017 12:37:50
Ralph
Morgen Werner
Ich hoffe Du verlierst nicht langsam die Nerven mit mir. Ich habe es ausprobiert nun glaube ich den Fehler gefunden zu haben. Die Listen der Kundennamen sind nicht der Reihe nach. Wenn ich etwas suchen müsste ginge ich über den SVERWEIS.
Gruss Ralph
AW: warum nochmal?
25.05.2017 16:08:57
Werner
Hallo Ralph,
warum schreibst du das gleiche nochmal? Zum Problem habe ich dir bereits einen entsprechenden Code mit einer IDEX / Vergleich Formel gepostet.
Gruß Werner
AW: warum nochmal?
25.05.2017 16:55:01
Ralph
Evtl. Habe ich etwas falsches mit dem Handy geschrieben. War mir nicht bewusst. Sorry. Es funktioniert nàmlivh ausgezeichnet.
Gruss Ralph
Danke nochmals
Anzeige
AW: Gerne u. Danke für die Rückmeldung. o.w.T.
25.05.2017 16:58:36
Werner

324 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige