Hallo,
ich habe eine Rückfrage:
Bei diesem Code wird eine Tabelle über die UserForm bearbeitet und es klappt "relativ" gut. Nur wenn in der ersten Spalte nichts steht dann wird scheinbar an allen Positionen außer der ersten Row, das ausgewählte Element "verschoben" bzw. an erste Stelle ersetzt. Ich kann es mir nicht wirklich erklären. Daher meine Frage, ist die Methode die ich verwende nicht ideal und wie kann es ich besser machen? Freue mich über Feedback. Datei anbei.
UserForm, frmRaum, Zeile 110.
Spoiler anzeigen
ich habe eine Rückfrage:
Bei diesem Code wird eine Tabelle über die UserForm bearbeitet und es klappt "relativ" gut. Nur wenn in der ersten Spalte nichts steht dann wird scheinbar an allen Positionen außer der ersten Row, das ausgewählte Element "verschoben" bzw. an erste Stelle ersetzt. Ich kann es mir nicht wirklich erklären. Daher meine Frage, ist die Methode die ich verwende nicht ideal und wie kann es ich besser machen? Freue mich über Feedback. Datei anbei.
UserForm, frmRaum, Zeile 110.
VB.NET-Quellcode
- Private Sub btn_save_Click()
- fn = Replace(Me.Name, "frm", "")
- Set c = Controls("lb_" & fn)
- Set wks = ThisWorkbook.Worksheets(fn)
- Set tbl = wks.ListObjects("dt_" & fn)
- With wks
- If c.ListIndex = -1 Then
- MsgBox ("Es wurde kein Raum zum Aendern ausgewaehlt."), vbExclamation
- Else
- bzeile = .Columns(1).Find(c.List(c.ListIndex, 0), , xlValues).Row
- .Cells(bzeile, 1) = tb_00.Text
- .Cells(bzeile, 2) = tb_01.Text
- End If
- End With
- With c
- .Clear
- .List = tbl.DataBodyRange.Value
- End With
- tb_00.SetFocus
- End Sub