Excel-Tutorial: Makro per Checkbox ausführen (Interaktive To-Do Liste)

Melden

Hier ist ein ausführliches Tutorial, wie du eine interaktive To-Do-Liste in Excel erstellst, bei der das Anklicken einer Checkbox automatisch ein Makro auslöst (z. B. um eine Aufgabe durchzustreichen).


In diesem Tutorial lernst du, wie du eine To-Do-Liste erstellst, die nicht nur schick aussieht, sondern auch intelligent reagiert. Sobald du ein Häkchen setzt, wird ein VBA-Makro ausgeführt, das die entsprechende Zeile formatiert.

Schritt 1: Die Registerkarte „Entwicklertools“ aktivieren

Bevor wir mit Makros arbeiten können, muss die Registerkarte Entwicklertools im Menüband sichtbar sein.

  1. Mache einen Rechtsklick auf eine beliebige Stelle im Menüband (Ribbon).
  2. Wähle Menüband anpassen....
  3. Setze in der rechten Liste den Haken bei Entwicklertools.
  4. Klicke auf OK.

Schritt 2: Die To-Do-Liste vorbereiten

Erstelle eine einfache Tabelle:

  • Spalte A: Status (hier kommen die Checkboxen rein)
  • Spalte B: Aufgabe (deine Texte)

Schritt 3: Das Makro schreiben

Wir erstellen nun ein Makro, das erkennt, welche Checkbox geklickt wurde, und die danebenliegende Zelle durchstreicht.

  1. Klicke auf die Registerkarte Entwicklertools und dann auf Visual Basic (oder drücke ALT + F11).
  2. Gehe im Menü auf Einfügen > Modul.
  3. Kopiere den folgenden Code in das leere Fenster:
Sub TaskErledigt()
    Dim cb As CheckBox
    Dim rowNum As Integer

    ' Die Checkbox identifizieren, die geklickt wurde
    Set cb = ActiveSheet.CheckBoxes(Application.Caller)

    ' Die Zeilennummer der Checkbox ermitteln
    rowNum = cb.TopLeftCell.Row

    ' Wenn die Checkbox aktiviert ist
    If cb.Value = 1 Then
        ' Text in Spalte B durchstreichen und grau färben
        With Cells(rowNum, 2).Font
            .Strikethrough = True
            .Color = RGB(160, 160, 160)
        End With
    Else
        ' Formatierung aufheben, wenn Haken entfernt wird
        With Cells(rowNum, 2).Font
            .Strikethrough = False
            .Color = RGB(0, 0, 0)
        End With
    End If
End Sub
  1. Schließe das VBA-Fenster (einfach oben rechts auf das X klicken).

Schritt 4: Checkboxen einfügen und Makro zuweisen

Jetzt verknüpfen wir die grafischen Checkboxen mit unserem Code.

  1. Gehe auf Entwicklertools > Einfügen.
  2. Wähle unter Formularsteuerelemente das Symbol für die Kontrollkästchen (Checkbox).
  3. Zeichne die Checkbox in die Zelle A2.
  4. Entferne den Standard-Text ("Kontrollkästchen 1") durch einen Rechtsklick darauf -> Text bearbeiten und löschen.
  5. Wichtig: Mache einen Rechtsklick auf die Checkbox und wähle Makro zuweisen....
  6. Wähle das Makro TaskErledigt aus und klicke auf OK.

Schritt 5: Checkboxen vervielfältigen

Du musst das Makro nicht für jede Zeile neu schreiben.

  1. Klicke die Zelle A2 an (nicht die Checkbox direkt, sondern die Zelle darunter/dahinter).
  2. Ziehe die Zelle am kleinen Viereck rechts unten nach unten, um sie in weitere Zeilen zu kopieren.
  3. Excel kopiert die Checkbox samt der Makro-Verknüpfung. Dank der Zeile cb.TopLeftCell.Row im Code weiß Excel in jeder Zeile automatisch, welche Aufgabe durchgestrichen werden soll.

Schritt 6: Datei richtig speichern

Da die Datei ein Makro enthält, kannst du sie nicht als normale .xlsx speichern.

  1. Gehe auf Datei > Speichern unter.
  2. Wähle als Dateityp Excel-Arbeitsmappe mit Makros (.xlsm).

Profi-Tipp:

Wenn du das Design der Checkboxen ändern möchst (z. B. Größe oder Position), halte die STRG-Taste gedrückt, während du auf die Checkbox klickst. So verhinderst du, dass das Makro direkt ausgelöst wird, und kannst das Element stattdessen verschieben oder bearbeiten.

Viel Erfolg mit deiner interaktiven To-Do Liste!

0