Hallo Gast,
ja das geht in deinem Fall, da alle Textboxen durchnummeriert sind, recht einfach mit einer For Next Schleife. Also fuer alle Textboxen:
Private Sub CommandButton1_Click()
Dim i As Long
For i = 1 To 17
If Me.Controls("TextBox" & i) = "" Then
MsgBox "Bitte etwas eintragen"
Me.Controls("TextBox" & i).SetFocus
Exit Sub
End If
Next
End Sub
Deinen Code zum Eintragen in die Tabelle kann man uebrigens auch verkuerzen. Schade, dass da die 2 Comboboxen dazwischen sind. Sonst waere es auch hier moeglich, dass noch mehr mit einer Schleife zu verkuerzen.
Dim letzte as Long
With Worksheets("")
letzte = .Cells(Rows.Count, 1).End(xlUp).Offset(1).Row
.Cells(letzte, 1) = TextBox1.Value
.Cells(letzte, 2) = TextBox2.Value
.Cells(letzte, 3) = TextBox3.Value
.Cells(letzte, 4) = TextBox4.Value
.Cells(letzte, 5) = TextBox5.Value
.Cells(letzte, 6) = TextBox6.Value
.Cells(letzte, 7) = TextBox7.Value
.Cells(letzte, 8) = TextBox8.Value
.Cells(letzte, 9) = TextBox9.Value
.Cells(letzte, 10) = TextBox10.Value
.Cells(letzte, 11) = TextBox11.Value
.Cells(letzte, 12) = TextBox12.Value
.Cells(letzte, 13) = TextBox13.Value
.Cells(letzte, 14) = TextBox14.Value
.Cells(letzte, 15) = TextBox15.Value
.Cells(letzte, 16) = ComboBox1.Value
.Cells(letzte, 17) = ComboBox2.Value
.Cells(letzte, 18) = TextBox16.Value
.Cells(letzte, 19) = TextBox17.Value
End With
Gruss Tor
|