Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1928to1932
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA - Arbeitsblatt vergleich

VBA - Arbeitsblatt vergleich
24.04.2023 08:13:22
Marius

Guten Morgen zusammen,

im Bereich VBA hatte ich mir bisher immer über bestehende Codes aus dem Forum aushelfen können. Leider stehe ich seit einigen Tagen vor einem Problem, welches ich so noch nicht lösen konnte.
Meine Funktion soll wie folgt funktionieren:

In dem Arbeitsblatt "Tabelle2" stehen in der Spalte A in einzelnen Zelle unterschiedliche Werte "Chargen-Nummern" welche per Hand eingetragen werden. Über das VBA soll dann aus dem Arbeitsblatt "Tabelle1" die Werte in der Spalte A verglichen werden und wenn Übereinstimmungen vorhanden sind, sollen alle Werte (oder nur gewisse, aber das bekomme ich sicher selbst gecodet) von dem Arbeitsblatt "Tabelle1" zum Arbeitsblatt "Tabelle 2" kopiert werden.

Die Tabelle1 ist einfach nur ein sehr großer Datensatz und die Tabelle 2 soll durch die Eintragung der Chargennummer die Werte übernehmen.

Falls mir hierzu jemand behilftlich sein könnte, wäre ich sehr dankbar. Ich hoffe, dass die meine Problemstellung ausreichend beschreiben könnte.

Vielen Dank und liebe Grüße!

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

Betreff
Datum
Anwender
Anzeige
AW: VBA - Arbeitsblatt vergleich
24.04.2023 08:38:32
MCO
Moin, Marius!

Ich hab´s mal für 10 zu übertragene Spalten vorgesehen
Wenn leer passiert nix, wenn Spalte >"A" passiert nix.

Das Makro gehört in das Modul des Tabellenblattes sheet 2
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim gef As Range
    If Target = "" Or Target.Column > 1 Then Exit Sub
    Set gef = Sheets(1).Range("A:A").Find(Target)
    
    If Not gef Is Nothing Then
        For i = 1 To 10
            Target.Offset(0, i) = gef.Offset(0, i)
        Next i
    End If

End Sub
Viel Erfolg!

Gruß, MCO


Anzeige
AW: VBA - Arbeitsblatt vergleich
24.04.2023 14:20:02
Yal
Moin,

auf Basis von MOCs Coding, eine Version für "gewisse" Spalten, in gewisse Reihenfolge:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Quelle As Range
Dim Sp
Dim i As Long
    
    If Target = "" Or Target.Column > 1 Or Target.Cells.Count > 1 Then Exit Sub
    Set Quelle = Sheets(1).Range("A:A").Find(Target)
    
    If Not Quelle Is Nothing Then
        For Each Sp In Split("B G C D J") 'split splittet per Default mit Leerzeichen
            i = i + 1
            Target.Offset(0, i) = Quelle.EntireRow.Cells(1, Sp) 'relative Adresse: "C3" heisst innerhalb der dritte Zeile "C1" (in dem Fall Cells(1, "C")
        Next
    End If
End Sub
VG
Yal


Anzeige
Verzeihung: MCO (vertippt)
24.04.2023 14:21:07
Yal

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige