Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Anhakfeld auf Veränderungen überwachen
#1
Question 
hi, ich habe ein Anhakfeld in einer Tabelle. Und das Zielfeld ebenfalls in dieser Tabelle auf Feld Z1.

Ich möchte nun überprüfen, ob eine Änderung am Anhakfeld stattgefunden hat per VBA. Also nicht, ob Feld Z1 danach WAHR oder FALSCH ist, sondern ob aktuell etwas verändert wurde am Status des Anhakfeldes.


So sieht mein Codeversuch aus:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("Z1")) Is Nothing Then
  MsgBox "klappt"
End If
End Sub


Jedoch kommt die MsgBox nicht, wenn ich ein Häkchen in das Anhakfeld setzte oder wegnehme. Zelle Z1 ändert sich auf WAHR bzw. FALSCH. Warum?

lieben Dank

Julia :)
Antworten Top
#2
Hallo Julia,

Anhakfeld? Du meinst wohl eher eine CheckBox? Aus welcher Leiste hast Du es in die Tabelle eingefügt? Aus der Formularbox oder der Steuerelementebox?
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • o0Julia0o
Antworten Top
#3
über Entwicklertools>Einfügen>Formularsteuerelemente
Antworten Top
#4
Also wenn ich das richtig lese will Sie eigentlich ein ActiveX-Steuerlement nutzen?

Zitat:ob eine Änderung am Anhakfeld stattgefunden hat per VBA. Also nicht, ob Feld Z1 danach WAHR oder FALSCH

Glaube das geht nicht mit den anderen oder?!
Antworten Top
#5
Hallo,

beide lösen kein Ereignis der Tabelle aus.
Die ActiveX haben aber ihre eigenen Ereignisprozeduren.
Gruß Atilla
Antworten Top
#6
Korrekt, aber ActiveX kann man überwachen OHNE zu schauen ob A1 oder was auch immer FAlSE oder TRUE ist.
So wie gewünscht wenn ich das richtig lese!
Antworten Top
#7
Hallo Basisa,

das geht beiden.
Bei dem Einen einfacher und beim Anderen etwas aufwendiger.
Gruß Atilla
Antworten Top
#8
Kannst du es grob erklären ^^
Also für das normale Steuerelement.
Damit ich nicht ganz doof sterbe!
Antworten Top
#9
Hallo,

wer denkt denn sofort ans Sterben.


Code:
Sub CHECK_klick()
 If ActiveSheet.Shapes("Kontrollkästchen 1").ControlFormat.Value = xlOn Then
   MsgBox "HÄKCHEN DRIN"
 Else
   MsgBox "HÄKCHEN RAUS"
 End If
End Sub


Obigen Code als Makro dem Kontrollkästchen zuweisen
Gruß Atilla
Antworten Top
#10
Hiii danke...
Habe mal das Inet durchforstet!

So bekommt man die Namen raus (oder was auch immer man möchte):
Code:
Sub NameKontrollkästchen()
  Dim cbbElement As Variant
  For Each cbbElement In Worksheets("Tabelle1").CheckBoxes
     MsgBox cbbElement.Name
  Next cbbElement
End Sub

Nach viel herum experimentieren habe ich auch das hinbekommen :D
Code:
Sub KontrollkästchenJaNein()
    If CheckBoxes(1).Value = 1 Then
        MsgBox "Aktiv"
    Else
        MsgBox "Deaktviert"
    End If
End Sub
Wenn man nur > CheckBoxes.Value = True schreibt werden ALLE auf True gesetzt ^^
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste