Microsoft Excel

Herbers Excel/VBA-Archiv

Addin über Symbolleiste/Schaltfläche starten

Betrifft: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 20.08.2004 14:18:23

Hallöchen.
Ich habe ein Addin erstellt und es auch über den AddinManager "importiert".
Leider weiß ich nicht wo ich das Addin dann starten kann. Ist es möglich, dass eine kleine Symolleiste erscheint wenn das Addin importiert wurde? wenn ja wie?
Ich habe folgenden Code gefunden, weiß aber nicht
wo ich den einfügen muss. Muss es ein extra Makro sein oder wie?
ActiveWorkbook.OnEntry = "MeinMakro"

Danke an die Helfer..
Gruß
Andy

  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Hans W. Herber
Geschrieben am: 21.08.2004 09:34:25

Hallo Andy,

sinnvoll ist beispielsweise eine über die Workbook_Open-Prozedur erzeugte Schaltfläche in der Excel-Menüleiste, die über das Workbook_Before-Close-Ereignis wieder gelöscht wird. Ein Beispiel findest Du in meiner Excel-FAQ hier:
http://xlfaq.herber.de/texte/007198h.htm

gruss hans


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 23.08.2004 09:44:55

Hallo Hans!
Ich habe den beispielcode leicht geändert und probiert. Leider hat es nicht funktioniert.
Trotzdem Danke.
Andy


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Hans W. Herber
Geschrieben am: 23.08.2004 09:56:48

... am Beispiel-Code wirds ja nicht gelegen haben. Ohne Deinen Code zu kennen, kann da auch nichts zu gesagt werden.

Gruss hans


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 23.08.2004 10:11:44

HAllo! Ich habe diesen Code vor das eigentliche Makro im selben Modul vor "Sub Gesamt()" eingefügt. Spielt es eine Rolle wenn am Ende dieses Codes eine weiteres "Sub speichern ()" aufgerufen wird?

Private Sub BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("Lieferant") _
.Controls("LDiagramm").Delete
On Error GoTo 0
End Sub


Private Sub WorkbookOpen()
Dim oBar As CommandBar
Dim oBtn As CommandBarButton
Set oBar = Application.CommandBars("Lieferant")
On Error Resume Next
oBar.Controls("LDiagramm").Delete
On Error GoTo 0
Set oBtn = oBar.Controls.Add
With oBtn
    .Caption = "LDiagramm"
    .Style = msoButtonIcon
    .FaceId = 361
    .OnAction = "Gesamt"
End With
End Sub


Gruß
Andy


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Hans W. Herber
Geschrieben am: 23.08.2004 10:20:52

Hallo Andy,

bei Deinen Prozeduren handelt es sich nur im ersten Anschein um die Ereignisprozeduren, die hier geforder sind. Die Syntax der Prozedurnamen ist nicht korrekt, es fehlen die Unterstriche. Sieh Dir dazu meinen Beispielcode noch einmal genau an.

Zudem vermute ich, dass Du die Prozeduren in einem Standardmodul, nicht im Klassenmodul der Arbeitsmappe untergebracht hast.

Gruss hans


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 23.08.2004 10:44:36

Sorry, aber es passiert immer noch nix. Ich habe den Code überpüft, bei fehlern geändert und ein Klassenmodul erstellt, in dem der gesamte Code steht. Dann habe ich die MAppe als .xla gespeichert und per AddinManager importiert. Leider passiert nix. Was für ein Button sollte denn erscheinen?

ClassModule: DieseArbeitsmappe

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("Standard") _
.Controls("LDiagramm").Delete
On Error GoTo 0
End Sub


Private Sub Workbook_Open()
Dim oBar As CommandBar
Dim oBtn As CommandBarButton
Set oBar = Application.CommandBars("Standard")
On Error Resume Next
oBar.Controls("LDiagramm").Delete
On Error GoTo 0
Set oBtn = oBar.Controls.Add
With oBtn
    .Caption = "LDiagramm"
    .Style = msoButtonIcon
    .FaceId = 361
    .OnAction = "Gesamt"
End With
End Sub


gruß
Andy


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Hans W. Herber
Geschrieben am: 23.08.2004 10:51:44

... ich habe Deinen Code getestet und er funktioniert erwartungsgemäß perfekt.

Gruss hans


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 23.08.2004 11:16:48

Vielen Dank. Ich habe es jetzt einige male probiert. davon hat es ein mal geklappt und der Button ist erschienen. Leider habe ich es zu spät gemerkt und die Mappe geschlossen. Beim Öffnen einer neuen MAppe, war der Button noch da, hat aber nicht funktioniert.
Was köntn ich falsch gemacht haben?
Vielen Dankk für die Geduld. Sorry, wegen der vielen fragen..

Andy


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Hans W. Herber
Geschrieben am: 23.08.2004 11:31:50

Hallo Andy,

installiere das AddIn ordnungsgemäß über den AddIn-Manager, dann wird der Menüpunkt bei der Deaktivierung auch korrekt entfernt.

Gruss hans


  


Betrifft: AW: Addin über Symbolleiste/Schaltfläche starten von: Andy
Geschrieben am: 23.08.2004 11:48:41

Das wäre schön, aber es erscheint nicht..
Gruß Andy


 

Beiträge aus den Excel-Beispielen zum Thema "Addin über Symbolleiste/Schaltfläche starten"