ich verzweifle ein wenig an einer vermutlich kleinen Aufgabe.
Der gewählte Listindex (auch Multiselect möglich) soll bei Klick auf den Button 1 aus der Listbox und aus der
Ursprungstabelle entfernt werden und in ein anderes Tabellenblatt (in die letzte Zeile) geschrieben werden.
Einzeln kein Problem:
Sheets("Tabelle1").Rows(ListBox1.ListIndex + 2).Delete Shift:=xlUp
UserForm1.Repaint
Call ListBoxFüllen
Private Sub CommandButton1_Click()
Dim wks As Worksheet
Dim zeile As Long
Dim eintrag As Long
Dim spalte As Long
Set wks = Tabelle4
zeile = 3 '####### Sheets("Tabelle3").UsedRange.SpecialCells(xlCellTypeLastCell).Row #######
For eintrag = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(eintrag) Then
For spalte = 1 To 7
wks.Cells(zeile, spalte) = Me.ListBox1.List(eintrag, spalte - 1)
Next spalte
zeile = zeile + 1
End If
Next
End Sub
Zum einen finde ich mit dem ausgeklammerten Code
Sheets("Tabelle3").UsedRange.SpecialCells(xlCellTypeLastCell).Row
ohne Probleme in einem separatem SUB die letzte Zeile in einer msgbox, jedoch im oben stehenden Makro bei Test nicht.
Definiere ich zeile =3 als festen wert klappt es.
Hinzu kommt das ich Set wks = Tabelle4 angeben muss, damit er die Daten in das Tabellenblatt 3 schreibt ?
Danke euch für die Infos, die da kommen.
M.A.