Kann ich die von Excel vorgegebene Schaltfläche(gelbes Smiely)
oder das benutzerdefinierte Menüelement mit einem anderen
Symbol oder Text versehen ?
Danke im voraus.
Rolf
Danke im voraus.
Rolf
hier ein Beispiel für 1 bis 2 Schaltflächen.
Du musst allerdings in der Mappe 2 Bildchen mit dem Namen Symbol1 und Symbol2 bereitstellen.
Dim i As Integer
Sub Symbol_anpassen()
On Error Resume Next
Toolbars("Test").Delete '(Falls noch da vom letzten Versuch)
On Error GoTo nix
With Application
.ShowToolTips = True
.LargeButtons = False
.ColorButtons = True
End With
Toolbars.Add Name:="Test"
On Error GoTo nix
' For i = 1 To 2 'aktiviren für 2
i = 1 'bei 2 auskommentieren
Toolbars("Test").ToolbarButtons. _
Add Button:=210 + i, Before:=1
With Toolbars("Test")
.Visible = True
.Position = xlTop
.Left = 649
.Top = 35
End With
Sheets("Typ").DrawingObjects("symbol" & i).Copy
Toolbars("Test").ToolbarButtons(1). _
PasteFace
' Next i
' erste zuordnung war button 2
Application.Toolbars("Test1").ToolbarButtons(1). _
OnAction = "los_gehts"
' Application.Toolbars("Test2").ToolbarButtons(). _
' OnAction = "loser_gehts_auch"
With Toolbars("Test")
.ToolbarButtons(1).Name = "Willibald1"
' .ToolbarButtons().Name = "Willibald2"
End With
nix:
End Sub
Gruß Rolf
also, die Namen der Bildchen ohne Leerzeichen dazwischen, dann sind es glaube 16x16 Pixel.
Wenn der Fehler bei der Makrozuweisung war, dann liegts wohl auch an mir - Syntaxfehler:
Die Toolbar heist wie weiter oben im Code definiert "Test" und entsprechend müssen auch die Makro's zugewiesen werden:
Application.Toolbars("Test").ToolbarButtons(1). _
OnAction = "los_gehts"
' Application.Toolbars("Test").ToolbarButtons(2). _
' OnAction = "loser_gehts_auch"
ich habe gerade mal das Einfügen von Bildern in die Schaltfläche getestet, wenn man grössere nimmt werden die angepasst.
gruss andre
wie Günter schreibt, geht es bestimmt mit anpassen. Ansonsten habe ich hier mal ein Stück ms-hilfe kopiert. Man muss eben nur die Nummer vom Button wissen:
In diesem Beispiel wird die integrierte Schaltfläche FileOpen gesucht und ein benutzerdefiniertes Symbol aus der Zwischenablage, in der es zuvor vom Benutzer geändert wurde, in die Schaltfläche eingefügt. Dieses Beispiel funktioniert nicht, wenn in der Zwischenablage nicht bereits ein benutzerdefiniertes Symbol vorhanden ist. Verwenden Sie die CopyFace-Methode, um ein angegebenes Schaltflächensymbol in die Zwischenablage zu kopieren.
Set meinSteuerelement = CommandBars.FindControl(Type:=msoControlButton, Id:=23)
meinSteuerelement.PasteFace
gruss andre
Gruß Rolf