ich hoffe Ihr könnt mir nochmal helfen.
Per Commandbutton aus Userform werden Daten aus einer Liste in eine andere geschrieben.
Ich würde gerne dem Makro noch einen weiteren Befehl zuordnen.
Bevor die Daten geschrieben werden sollen in der Zieltabelle (A2:G190) bereits vorhandene Einträge entfernt werden. Aber ich steh schon wieder aufm Schlauch ...
Private Sub CommandButton1_Click()
Dim i As Long, iRow, iRowZ As Integer, wksZ As Worksheet
Set wksZ = Sheets("Z")
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
iRowZ = Application.Match(ListBox1.List(i, 0), wksZ.Columns(1), 0)
With Sheets("Tabelle3")
iRow = Application.Match(ListBox1.List(i, 0), .Columns(1), 0)
If IsError(iRow) Then iRow = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(iRow, 1) = wksZ.Cells(iRowZ, 1) 'A
.Cells(iRow, 2) = wksZ.Cells(iRowZ, 2) 'B
.Cells(iRow, 3) = wksZ.Cells(iRowZ, 11) 'K
.Cells(iRow, 4) = wksZ.Cells(iRowZ, 16) 'P
.Cells(iRow, 5) = wksZ.Cells(iRowZ, 9) 'I
.Cells(iRow, 6) = wksZ.Cells(iRowZ, 3) 'C
.Cells(iRow, 7) = wksZ.Cells(iRowZ, 6) 'F
ListBox1.Selected(i) = False
End With
End If
Next
ListBox1.ListIndex = 0
End Sub
Eigentlich würde ich Worksheets("Tabelle3").Cells(A2:G190).ClearContents verwenden.
Aber mein VB sagt das geht nicht. Von euch kennt sicher jemand die einfache Lösung.
Danke vorab!
Grüße Sven