Herbers Excel-Forum - das Archiv
benutzerdefinierte Schaltfläche "transportieren"
Betrifft: benutzerdefinierte Schaltfläche "transportieren"
von: front0708
Geschrieben am: 19.12.2006 11:06:31
Hallo,
wie kann ich es schaffen, dass eine von mir erstellt benutzerdefinierte Schaltfläche, die ich in die Symbolleiste Standard integriert habe, auch bei anderen Nutzer angezeigt wird, wenn ich Sie per E-Mail verschicke.
Leider ist nicht jeder Empfänger so fit in Excel, sich diese Schaltfläche anzeigen zu lassen.
Danke und beste Grüße
front
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: mumpel
Geschrieben am: 19.12.2006 11:45:09
Hallo!
Dafür kannst Du eine benutzerdefinierte Symbolleiste oder ein benutzerdefiniertes Menü einbauen, welche bei Öffnen der Arbeitsmappe erstellt und beim Schließen wieder entfernt werden. Oder Du baust es in das Kontextmenü ein. Beim Öffnen der Arbeitsmappe wird dann der Eintrag im Kontextmenü gesetzt und beim Schließen der Arbeitsmappe wieder entfernt. Soll das Makro dauerhaft in allen Arbeitsmappen genutzt werden, bietet sich ein Add-In an.
Gruss Rene
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: front0708
Geschrieben am: 19.12.2006 11:54:16
Hallo Rene,
vielen Dank für Deine Hilfe und Deinen Hinweis. Kannst Du mir sagen, wie ich das konkret anstelle?
Liebe Grüße
Gordon
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: mumpel
Geschrieben am: 19.12.2006 12:18:43
Dafür benutzt Du "Workbook_open" und "Workbook_BeforeClose". Diese Makros in "DieseArbeitsmappe" der Arbeitsmappe kopieren, in der die Makros benutzt werden sollen. Die ausführenden Makros müssen dann natürlich in einem Modul der Arbeitsmappe stehen. Mit den folgenden Makros setzt Du einen Kontextmenü-Eintrag beim Öffnen der Arbeitsmappe und löschst den selben wieder beim Schließen der Abeitsmappe.
Private Sub Workbook_BeforeClose(cancel As Boolean)
On Error Resume Next
Application.CommandBars("Cell").Controls("Transportieren").Delete
End Sub
Private Sub Workbook_open()
On Error Resume Next
Dim MB As CommandBarControl
Set MB = Application.CommandBars("Cell").Controls.Add
With MB
.Caption = "Transportieren" 'Hier den Namen des Eintrages angeben
.OnAction = "Transportieren" 'Hier den Namen des Makros angeben
.BeginGroup = True
.FaceId = 568 'Hier die Nummer des Icons angeben (ist optional)
End With
End Sub
Gruss Rene
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: front0708
Geschrieben am: 19.12.2006 16:10:13
Hallo Rene,
habe es wie in Deiner Bechreibung umgesetzt. Leider passiert rein gar nichts. Würdest Du Dir meine Datei
(https://www.herber.de/bbs/user/39111.xls)
einmal anschauen und mir auf die Sprünge helfen?
Vielen lieben Dank
Gordon
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: mumpel
Geschrieben am: 19.12.2006 16:37:09
Was genau soll daran nicht funktionieren? Der Eintrag im Zellen-Kontextmenü (rechte Maustaste) wird beim Öffnen erstellt und beim Schließen gelöscht. Oder möchtest Du eine Symbolleiste? In etwa so?
https://www.herber.de/bbs/user/39113.xls
Gruss Rene
Betrifft: AW: benutzerdefinierte Schaltfläche "transportieren"
von: front0708
Geschrieben am: 19.12.2006 17:04:23
Man ich Hornochse. ich hab den Eintrag im Kontextmenü gar nicht gesehen. Suuper. Die Lösung mit der Symbolleiste fdinde ich fast noch eingängiger. So sieht sie jeder auf den ersten Blick.
Vielen Vielen Dank und alles Gute.
Gordon