Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1380to1384
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Methode zur serienmäßigen Erst. von Kontrollkäst.

Methode zur serienmäßigen Erst. von Kontrollkäst.
08.09.2014 10:50:47
Kontrollkäst.
Hallo zusammen,
ich habe eine Tabelle mit mehreren Spalten(14) und möchte nun in jede Zelle ein Kontrollkästchen einfügen, welches beim Anklicken die dahinter liegende Zelle färbt. Das ist ansich kein Problem. Ich versuche nun aber eine Methode zu erstellen, die mir für sämtliche Zeilen eins solches Kontrollkästchen automatisch einfügt.
Für eine jeweilige Zelle benutze ich folgenden Code:
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
Range("D2").Interior.ColorIndex = 4
Else
Range("D2").Interior.ColorIndex = 3
End If
End Sub

Es ist ziemlich mühsam für jede Zelle eine eigene Methode zu schreiben. Das lässt sich doch bestimmt schneller lösen, da meine Tabelle etliche Zeilen hat?
Vielen Dank!!
Stephan

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
warum willst Du Dir das antun?
08.09.2014 11:04:35
Matthias
Hallo
Pro Zelle ein eigenes Objekt? Das bläht doch nur die Datei auf.
Benutz doch einfach den Doppelklick um wechselseitig die Farbe zu ändern.
Gruß Matthias

AW: Methode zur serienmäßigen Erst. von Kontrollkäst.
08.09.2014 11:16:48
Kontrollkäst.
Hi
den Doppelklick würde ich hier auch bevorzugen.
wenns unbedingt ne Checkbox sein soll, dann solltest du so vorgehen:
1. schreibe folgenden Code in ein allgemeines Modul:
Sub Färben()
With ActiveSheet.Shapes(Application.Caller)
If .OLEFormat.Object.Value = 1 Then
.TopLeftCell.Interior.ColorIndex = 4
Else
.TopLeftCell.Interior.ColorIndex = 3
End If
End With
End Sub
2. Erstelle die Checkbox nicht als ActiveX-Steuerelement, sondern als Formular-Steuerelement
3. weise dann der Checkbox diesen Code aus dem allgemeninen Modul zu.
der Code fragt ab, welches Steuerelement ihn aufgerufen hat und färbt die Zelle, in welcher sich die linke obere Ecke es Steuerelements befindet.
Das zuweisen des Codes erfolg über eine dieser Methoden:
- beim Erstellen von Hand über das Kontextmenü - Makro zuweisen
- beim Erstellen per Makro mit dem Befehl .OnAction "Makroname"
- beim Kopieren des Steuerelements wird die Verknüpfung zum Makro mit kopiert
das Makro kannst dann für alle Checkboxen verwenden.
Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige