Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
580to584
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
580to584
580to584
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro bei Mausklick nicht per Tastatur

Makro bei Mausklick nicht per Tastatur
07.03.2005 18:16:46
kretzing
Hallo zusammen,
ich möchte gerne, dass ein Makro nur dann ausführt wird, wenn eine Zelle per linker Maustaste angeklickt wird und nicht wenn man die Zelle per Tastatur anwählt. Gibt es da etwas vergleichbares zu BeforeRightClick oder kann man es dann nur per Doppelklick lösen?
Vielen Dank!
Gruß
André

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro bei Mausklick nicht per Tastatur
07.03.2005 18:21:37
Hajo_Zi
Hallo André,
linker Mausclick löst
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
aus
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


AW: Makro bei Mausklick nicht per Tastatur
07.03.2005 18:39:46
Matthias
Hallo André,
Excel unterscheidet da nicht zwischen Cursorbewegung und Mausklick.
Das Selection_Change()-Ereignis kann aber nutzen, wenn man die Cursorbelegung gewissermaßen "umbaut":
Sub UmstellungAn()
Application.OnKey "{LEFT}", "GoLeft"
Application.OnKey "{RIGHT}", "GoRight"
Application.OnKey "{UP}", "GoUp"
Application.OnKey "{DOWN}", "GoDown"
End Sub
Sub UmstellungAus()
Application.OnKey "{LEFT}"
Application.OnKey "{RIGHT}"
Application.OnKey "{UP}"
Application.OnKey "{DOWN}"
End Sub
Sub GoLeft()
On Error Resume Next
Application.EnableEvents = False
ActiveCell.Offset(0, -1).Select
Application.EnableEvents = True
End Sub
Sub GoRight()
On Error Resume Next
Application.EnableEvents = False
ActiveCell.Offset(0, 1).Select
Application.EnableEvents = True
End Sub
Sub GoUp()
On Error Resume Next
Application.EnableEvents = False
ActiveCell.Offset(-1, 0).Select
Application.EnableEvents = True
End Sub
Sub GoDown()
On Error Resume Next
Application.EnableEvents = False
ActiveCell.Offset(1, 0).Select
Application.EnableEvents = True
End Sub
Wobei hier immer noch die Varianten mit Shift sowie die ganzen anderen Bewegungstasten wie Pos1, Ende usw. fehlen.
Wenn du Lust hast, kannst du die ja alle anders belegen... mir wäre das allerdings zu aufwendig, ich würde den Doppel- oder Rechtsklick nehmen.
Gruß Matthias
Anzeige
AW: Makro bei Mausklick nicht per Tastatur
07.03.2005 18:49:33
Kretzing
Hallo Matthias,
ich habe beim Doppelklick lediglich das Problem, dass er dann auch die Zelle aktiviert und den Cursor in diese Zelle positioniert. Kann ich das vermeiden?
Vielen Dank!
Gruß
André
AW: Makro bei Mausklick nicht per Tastatur
07.03.2005 18:52:29
Hajo_Zi
Hallo Andre

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$A$1" Then Cancel = True
End Sub

Gruß Hajo
AW: Makro bei Mausklick nicht per Tastatur
07.03.2005 19:10:40
Franz
Hallo André!
Kopiere folgende SUB in mindestens 4 Tabellen.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Target_ANFANG = "$A$1"
Target_ENDE = "$B$1"
Target_ZURÜCK = "$C$1"
Target_WEITER = "$D$1"
Anz = Sheets.Count
Ind = ActiveSheet.Index
Select Case Target.Address
Case Target_ANFANG
Sheets(1).Select
Case Target_ENDE: Sheets(Anz).Select
Case Target_ZURÜCK
If Ind = 1 Then
Sheets(1).Select
Exit Sub
End If
Sheets(Ind - 1).Select
Case Target_WEITER
If Ind = Anz Then
Sheets(Anz).Select
Exit Sub
End If
Sheets(Ind + 1).Select
Case Else
End Select
MsgBox ("Sprung in " & ActiveSheet.Name)
End Sub

Per Doppelclick im bereich A1 bis A4 kann man hier "navigieren". Natürlich solltest du daraus sinnvolleres gestalten. Tipp: Die SUB umschreiben auf Modul-Ebene und somit global benutzen.
So long!
Franz D.
Anzeige
Danke!
07.03.2005 19:33:35
Kretzing
Vielen Dank für Eure schnelle Hilfe!
Ich wünsche Euch noch einen schönen Abend!
Schöne Grüße
André

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige