Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Zelleninhalt nach Shift + Mausklick ausgeben

Betrifft: Zelleninhalt nach Shift + Mausklick ausgeben von: Schlaubstar
Geschrieben am: 08.09.2004 14:19:26

Hallo: Ich will einfach nach klicken mit Shift (oder Alt) auf eine Zelle deren Inhalt als Messagebox beispielsweise ausgegeben haben. Wie fange ich denn generell Mousclicks ab ?!

  


Betrifft: AW: Zelleninhalt nach Shift + Mausklick ausgeben von: WernerB.
Geschrieben am: 08.09.2004 14:34:16

Hallo ???,

in diesem Forum bitte mit Real(vor)namen auftreten; siehe dazu bitte auch die "Forums-FAQ"!. Danke!

Zu Deinem Problem:
Das geht mit dem Doppelklick-Ereignis. Das nachstehende Makro gehört in das Modul des betreffenden Tabellenblattes.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    MsgBox "Zellinhalt:  " & Target.Text, vbInformation, _
      "Dezenter Hinweis für " & Application.UserName & ":"
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !


  


Betrifft: AW: Zelleninhalt nach Shift + Mausklick ausgeben von: StefanS.
Geschrieben am: 08.09.2004 20:43:15

Sorry, wegen dem Vornamaen; War in Eile und habe die FAQs nicht gelesen.
Ich habe das Problem schon selbst halb gelöst ! Nur das mit dem ALT+Klick will nicht so recht.
Ich habe eine Declare Function GetKeyState gemacht, und irgendwie kann ich das
mit dem Alt zwar abfangen, aber er scheint den Counter immer nur zu verändern, wenn das
Ding neu gedrückt wurde, d.h. im Moment kann ich klicken, nichts passiert; alt+klick : Message kommt, klick: Message kommt wieder, alt+Klick: Message kommt nicht mehr.
Aber ich bekomme das schon noch in den Griff.
Danke für die Antwort:


  


Betrifft: AW: Zelleninhalt nach Shift + Mausklick ausgeben von: Nepumuk
Geschrieben am: 09.09.2004 05:25:11

Hallo Stefan,
GetKeyState reagiert nur auf das aktuelle drücken der Taste. So geht's besser:


Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As LongAs Integer

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If GetAsyncKeyState(18) And Target.Count = 1 Then MsgBox Target.Value
End Sub


Gruß
Nepumuk


 

Beiträge aus den Excel-Beispielen zum Thema "Zelleninhalt nach Shift + Mausklick ausgeben"