Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
544to548
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
544to548
544to548
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellen Vergleichen

Tabellen Vergleichen
14.01.2005 23:51:36
Train@jockel
Hallo zuammen,
bin absoluter VBA Neuling und hab natürlich ein Prob, muss zwei Tabellen in zwei Arbeitsmappen miteinander vergleichen lassen, und alle Neueinträge die in Arbeitsmappe 2 Tabelle 1 hinzugefügt wurden, in Arbeitsmappe 1 Tabelle 1 hintenrangehängt werden.
Wäre super wenn mir jemand helfen könnte!

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellen Vergleichen
15.01.2005 00:00:39
Josef
Hallo ? (realnames sind hier üblich und erwünscht!)
Wo stehen die Daten? (Bereich)
Was soll verglichen werden?
Was verstehst du mit "hintendrangehängt"?
Gruß Sepp
AW: Tabellen Vergleichen
Manuel
Die Daten stehen in Spalte "B" in beiden Tabellen, verglichen werden die Zelleninhalte auf gleichheit, sollten in Tabelle 2 Einträge vorhanden sein, die in Tabelle 1 nicht vorhanden sind, sollen sie in Tabelle 1 in die erste freie Zeile in "B" geschrieben werden.
AW: Tabellen Vergleichen
15.01.2005 15:16:47
Josef
Hallo Manuel!
Kopiere diesen Code in ein allgemeines Modul!
(öffne mit Alt+F11 den VBE, &gt Einfügen &gt Modul)


      
Option Explicit
Sub vergleicheTabellen()
'by Josef Ehrensberger
Dim arr As Variant
Dim wks1 As Worksheet, wks2 As Worksheet
Dim n As Long, lastRow1 As Long, lastRow2 As Long
Dim rng As Range
Set wks1 = Sheets("Tabelle1")
                  
'Tabelle1 - anpassen
Set wks2 = Sheets("Tabelle2")
                  
'Tabelle2 - anpassen
                  
lastRow1 = IIf(wks1.Range(
"B65536") <> "", 65536, _
wks1.Range(
"B65536").End(xlUp).Row)
                  
'ermitteln der letzten belegten Zelle in Tabelle1
lastRow2 = IIf(wks2.Range("B65536") <> "", 65536, _
wks2.Range(
"B65536").End(xlUp).Row)
                  
'ermitteln der letzten belegten Zelle in Tabelle2
                  
arr = wks2.Range(
"B1:B" & lastRow2)
                  
'Daten aus Tabelle2 an Array übergeben
                  
   
For n = 1 To UBound(arr, 1)
   
Set rng = wks1.Range("B:B").Find(arr(n, 1))
                  
'Daten aus Tab2 in Tab1 suchen und
                  'wenn nicht gefundenin Tab1 eintragen
      If rng Is Nothing Then
         lastRow1 = lastRow1 + 1
         wks1.Cells(lastRow1, 2) = arr(n, 1)
      
End If
   
Next
End Sub 
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige