Zellen Vergleichen in Liste und Tabelle
#1
Guten Morgen,

ich stehe vor folgendem Problem. 
Ich habe eine senkrechte Liste mit Zahlen und eine Waagerechte Tabelle mit Zahlen und Wörtern in einer Zelle.

ich habe das Beispiel einmal angehängt. 
.xlsx   TEst.xlsx (Größe: 11,92 KB / Downloads: 2)

Ich würde nun gerne aus Tabellenblatt 1 die rot makierten Zahlen mit den Zahlen in Tabellenblatt 2 vergleichen und danach die Zahlen die nicht vorhanden sind in Tabellenblatt 2 anhängen.
Das Problem ist, dass die Zahlen auf Blatt 1 alleine stehen und auf Blatt 2 ist ein Text mit in gleicher Zelle.
Was später auch passieren soll, dass ich im neuen Monat, 2 neue Blätter bekomme und Excel diese prüfung direkt automatisch wieder ausführt.
Lässt sich dies umsetzen? 

Könnt ihr mir dabei vielleicht helfen? 


Mit freundlichen Grüßen
Lennart
Top
#2
Hallo Lennart,
mit dem Code
Code:
Sub Machen()
  Ergaenzen "Tabelle1", "Tabelle2"
End Sub
Function Ergaenzen(Quelle As String, Ziel As String)
Dim i As Long, Wert As String, found As Object, spend As Long
  spend = 2
  Do
    spend = spend + 1
  Loop Until IsEmpty(Sheets(Ziel).Cells(1, spend))
  With Sheets(Quelle)
    For i = 1 To .Cells(.Rows.Count, 3).End(xlUp).Row
      Wert = .Cells(i, 3)
      Set found = ThisWorkbook.Sheets(Ziel).Rows(1).Find(what:=Wert, LookIn:=xlValues, lookat:=xlPart)
      If found Is Nothing Then  'noch nicht vorhanden
        Sheets(Ziel).Cells(1, spend) = Wert
        spend = spend + 1
      End If
    Next i
  End With
End Function
sollte das Gewünschte erfolgen.
Die 'Automatik' müsstest Du Dir selber basteln, bei 2 Tabellen pro Monat erscheinbt mir das aber nicht unbedingt notwendig...
Gruß der AlteDresdner (Win11, Off2021)
Top
#3
Hi,

vielen Dank, dass funktioniert schonmal super.
Ich bin jetzt nicht so begabt was VBA angeht.

Wenn ich das jetzt in meine Tabelle einfüge, funktioniert das leider nicht ganz richtig.
Da der Wert auf Tabellenblatt 1 in Spalte 2 steht und nicht in Spalte 3, hatte da einen Übertragungsfehler.
Könntest du nochmal sagen, welchen Wert etc. ich im Code ändern müsste, damit er Spalte  2 und nicht 3 nimmt?

Vielen Dank vorab!

Okay, habe es selber gerade hinbekommen :D

Tausend Dank, funktioniert einwandfrei!
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste