Brauche wieder eure Superkentnisse, da ich schon wieder kurz vorm verzweifeln bin.
Habe in diesem Forum folgende Anweisung gefunden, um Zelleninhalte einer Spalte ohne Duplikate in eine andere Spalte zu kopieren. Das funktioniert auch super wenn sich alles im Activesheet abspielt.
Wie kann ich dies nun so umbauen, dass meine Werte aus dem Activesheet auf ein anderes Tabellenblatt übertragen werden? Meine Ziel-Quelle ist das Tabellenblatt ("Konditionen") - Spalte 1 zum Beispiel.
Der Befehl "Columns(COL_Z).ClearContents" funktioniert irgendwie auch nicht. Da kommt dann immer eine Debuggen-Fehlermeldung. Könnte sie sonst zur not auch weglassen denke ich oder was meint ihr?
Wäre euch sehr dankbar für eure Hilfestellung
Sub Preisgruppen_Kopieren()
Dim ROW_Q As Long ' Zeile Quelle '
Dim ROW_Z As Long ' Zeile Ziel '
Dim COL_Q As Long ' Spalte Quelle '
Dim COL_Z As Long ' Spalte Ziel '
COL_Q = 12 ' Werte aus Quell-Spalte
COL_Z = 2 ' Werte nach Ziel-Spalte
'Columns(COL_Z).ClearContents 'Zielspalte zuvor löschen !
For ROW_Q = 5 To Cells(Rows.Count, COL_Q).End(xlUp).Row
'Per ZÄHLENWENN() prüfen, ob Wert bereits in ZIEL-Spalte vorhanden ist :
If Application.CountIf(Columns(COL_Z), Cells(ROW_Q, COL_Q)) = 0 Then
'Wenn der Wert noch NICHT in der ZIEL-Spalte vorhanden ist :
ROW_Z = Cells(Rows.Count, COL_Z).End(xlUp).Row + 1
Cells(ROW_Z, COL_Z) = Cells(ROW_Q, COL_Q)
End If
Next
End Sub
Liebe Grüße
Sebi