Application.Caller
17.04.2008 17:27:00
Gregor
Auf einem Excel-Sheet habe ich Ellipsen als Orte mit Namen bezeichnet. Die Ellipsen habe ich mit Hyperlink auf eine Tabelle verknüpft. Das heisst, beim Anklicken mit der linken Maustaste springt der Cursor zum Ort in der Tabelle.
Zusätzlich möchte ich nun mit der RECHTEN Maustaste mittels UserForm Infos zum Ort liefern. Kann ich das mit der rechten Maustaste machen, das heisst, der Name der betreffenden Ellipse müsste ja eruiert werden können.
Das folgendes Makro (abgeändert) mit der linken Maustaste habe ich vor einigen Tagen im forum erhalten:
Sub ShapeBenannt()
Application.ScreenUpdating = False
Ort = ActiveSheet.Shapes(Application.Caller).Name
If Ort = "" Then Exit Sub
Set SuBe = Worksheets("Test").Range("A:A").Find(Ort, LookAt:=xlWhole)
If Not SuBe Is Nothing Then
Zeile = SuBe.Row
MsgBox Zeile & Ort
Else
MsgBox Prompt:=Ort & " nicht gefunden." _
& vbNewLine & vbNewLine, _
Title:=" Hinweis für " & Application.UserName
Worksheets("Test").Activate
Application.ScreenUpdating = True
Exit Sub
End If
Set SuBe = Nothing
Worksheets("Test").Select
Application.ScreenUpdating = True
End Sub
Mit
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
ShapeBenannt
End Sub
klappt es natürlich nicht.
Danke und Grüss
Gregor