Vg Marco
Um in einem Excel UserForm den Wert einer Checkbox korrekt zuweisen zu können, folge diesen Schritten:
Öffne dein Excel VBA-Editor mit ALT + F11.
Erstelle ein UserForm und füge eine Checkbox (CheckBox1) und einen Button (Button1) hinzu.
Klicke mit der rechten Maustaste auf den Button und wähle "Code anzeigen".
Füge den folgenden Code in das Button-Klick-Ereignis ein:
Private Sub Button1_Click()
Dim loLetzte As Long
loLetzte = Sheets("Datenbank").Cells(Rows.Count, 1).End(xlUp).Row + 1
Sheets("Datenbank").Cells(loLetzte, 3).Value = IIf(CheckBox1.Value, "Ja", "Nein")
End Sub
Schließe den VBA-Editor und teste dein UserForm. Wenn du die Checkbox aktivierst und den Button klickst, wird "Ja" in die Datenbank geschrieben, andernfalls "Nein".
Problem: Anstatt "Ja" oder "Nein" wird "Wahr" oder "Falsch" angezeigt.
IIf(CheckBox1.Value, "Ja", "Nein") verwendest, um die Werte korrekt zuzuweisen.Problem: Der Wert wird nicht in die richtige Zelle geschrieben.
loLetzte richtig definiert ist und auf die nächste freie Zeile zeigt.Eine alternative Methode zum Zuweisen des Checkbox-Wertes wäre die Verwendung von Select Case. Das kann so aussehen:
Private Sub Button1_Click()
Dim loLetzte As Long
loLetzte = Sheets("Datenbank").Cells(Rows.Count, 1).End(xlUp).Row + 1
Select Case CheckBox1.Value
Case True
Sheets("Datenbank").Cells(loLetzte, 3).Value = "Ja"
Case False
Sheets("Datenbank").Cells(loLetzte, 3).Value = "Nein"
End Select
End Sub
Nehmen wir an, du möchtest den Status eines Auftrags in deiner Datenbank festhalten. Wenn du die Checkbox "Auftrag bearbeitet" aktivierst, soll "Ja" in die Datenbank geschrieben werden:
CheckBoxAuftrag und einem Button.So kannst du schnell und einfach den Status deiner Aufträge festhalten.
Option Explicit am Anfang deines Codes, um sicherzustellen, dass alle Variablen deklariert sind. Das hilft bei der Fehlersuche.1. Wie kann ich die Checkbox standardmäßig aktivieren?
Du kannst die Checkbox im UserForm-Load-Ereignis aktivieren, indem du CheckBox1.Value = True setzt.
2. Was ist, wenn ich mehrere Checkboxen habe?
Du kannst den gleichen Ansatz für jede Checkbox verwenden, indem du verschiedene Zellen in der Datenbank ansprichst, je nachdem, welche Checkbox aktiviert ist.