Mit Strg+Mausklick "x" eintragen

22/06/2015 - 18:21 von Peter Schuerer | Report spam
Hallo Zusammen,
XL2002

mit folgendem Makro können durch Mausklick, im Bereich "D5:R114" "x"
eingetragen oder entfernt werden.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, Range("D5:R114")) Is Nothing Then Exit Sub
Target = IIf(Target = "x", "", "x")
End Sub

Aus Sicherheitsgründen wird jetzt gewünscht das diese Aktion nur beim
gleichzeitigen drücken der Taste "Strg"+Mausklick ausgeführt wird.
Es wurde schon mehrmals aus versehen in diesen Bereich geklickt und
danach wusste keiner mehr wo und ob ein "x" gesetzt oder gelöscht wurde.
Hoffe auf Hilfe.

Danke und Gruß
Peter
 

Lesen sie die antworten

#1 Claus Busch
22/06/2015 - 18:44 | Warnen spam
Hallo Peter,

Am Mon, 22 Jun 2015 18:21:38 +0200 schrieb Peter Schuerer:

Aus Sicherheitsgründen wird jetzt gewünscht das diese Aktion nur beim
gleichzeitigen drücken der Taste "Strg"+Mausklick ausgeführt wird.
Es wurde schon mehrmals aus versehen in diesen Bereich geklickt und
danach wusste keiner mehr wo und ob ein "x" gesetzt oder gelöscht wurde.



SendKeys sind nicht zuverlàssig und sollten vermieden werden. Auch sehe
ich keine Möglichkeit SendKey mit Mausklick zu kombinieren.
Wàre es eine Möglichkeit, das Ganze mit Rechtsklick zu tàtigen?
Probiere es mal so:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As
Boolean)
If Intersect(Target, Range("D5:R114")) Is Nothing Then Exit Sub
Target = IIf(Target = "x", "", "x")
Cancel = True
End Sub

Du könntest statt Rechtsklick auch Doppelklick nehmen.
Sonst müsste man mal sehen, wie man das unbeabsichtigte Löschen
verhindern kann:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("D5:R114")) Is Nothing Then Exit Sub

Dim Antwort As Integer

If Target = "" Then
Target = "x"
Else
Antwort = MsgBox("Soll x gelöscht werden?", vbOKCancel +
vbExclamation)
End If
If Antwort = vbOK Then Target = ""
End Sub


Mit freundlichen Grüßen
Claus
Vista Ultimate / Windows7
Office 2007 Ultimate / 2010 Professional

Ähnliche fragen