Re: Checkbox in Excel-Zelle einfügen

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Hallo Thomas

danke für deine Antwort...
den ThomasW scheint das Thema ja nicht mehr zu interessieren.
Das man die Verwendung von SendKeys vermeiden sollte wußte ich
schon, mir fiel aber nichts besseres ein da ich den Sinn des Cancel-Parameter
nicht kannte, habe damit auch wieder etwas dazugelernt

Nun korrigiere ich den Code noch mal, damit sich alle anderen Zellen bei
BeforeDoubleClick "normal" verhalten (Cancel noch hinters If)

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If VarType(Target) = vbBoolean Then Target = Not Target: Cancel = True
End Sub

mfG
Wolfgang Habernoll



"Thomas Ramel" <t.ramel@xxxxxxxx> schrieb im Newsbeitrag
news:191rpdnj6e81o.1bx91f7ts4tmc.dlg@xxxxxxxxxxxxx
Grüezi Wolfgang

Wolfgang Habernoll schrieb am 03.03.2006

muss es eine Checkbox sein ?. Ein Boole'scher Wert in einer Zelle ist
"WAHR"
oder "FALSCH" . Wenn dir das genügt, schreibe in beliebige Zellen der
Tabelle
einmal WAHR oder FALSCH und kopiere dieses kleine Makro im VBE in die
entsprechende Tabelle. Nu kannst du mit DoubleClick in der Zelle den Wert
umschalten.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If VarType(Target) = vbBoolean Then Target = Not Target
Application.SendKeys "{ESC}"
End Sub

Das ist ebenfalls eine gute Variante - gerade die VarType()_Prüfung gefällt
mir gut.

Was mich hier ein wenig stört ist die Verwendung des pösen SendKeys.

Um das direkte Bearbeiten der Zelle zu unterbinden bringt die
Ereignis-Prozedur zweiten Parameter mit. Es reicht also anstelle der
SendKeys-Anweisung die folgende Zeile:

Cancel = True



Mit freundlichen Grüssen
Thomas Ramel

--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2000 SP-3]
Microsoft Excel - Die ExpertenTipps:
(http://tinyurl.com/9ov3l und http://tinyurl.com/cmned)














.


Quantcast