AW: F2 / Bearbeitungsmodus für Shape-Objekt (Button) möglich
09.10.2024 16:36:58
Yal
Hmm... wenn es sich um ActiveX-Element händelt, also Objekte, bei dem im Hintergrund einen "CommandButton1_Click"-Ereignisprozedure steht, dann kannst Du den Ereignis "MouseUp" in Kombi mit Button = 2 (rechtsklick) verwenden, um eine Eingabeform (Inputbox) erscheinen zu lassen:
Private Sub CommandButton1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim NewCapt As String
Dim cmd
Set cmd = Me.Shapes("CommandButton1")
With cmd.OLEFormat.Object.Object
If Button = 2 Then
NewCapt = InputBox("Name """ & .Caption & """ ersetzen durch:", "Beschriftung ersezten", .Caption, cmd.Left + X, cmd.Top + Y)
If NewCapt > "" Then .Caption = NewCapt
End If
End With
End Sub
(an der Positionierung X/Y musste man nachfeilen. Bei mir geht es mit mehreren Bildschirm krumm. Vielleicht einfach die beide letzten Parameter weglassen)
Die direkte Eingabe würde ein Wechseln im Entwurfsmodus bedeuten, was der Anwender die Möglichkeit gibt, die Schaltfläche i.wo anders zu platzieren. Ausserdem nimmt der Makrorekorder den Vorgang nicht auf.
VG
Yal