Anzeige
Archiv - Navigation
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
964to968
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Eigene Symbolleiste - Listenfeldauswahl mit Button

Eigene Symbolleiste - Listenfeldauswahl mit Button
02.04.2008 18:04:00
Markus
Hallo,
habe mir im Excel VBA eine eigene Symbolleiste gestrickt. Diese beinhaltet Buttons und Listenfelder (Dropdownfelder). Jetzt hab ich mich aber dazu entschlossen, das Listenfeld zusätzlich mit einem Button zu versehen, damit man den aktuellen Eintrag aus dem Listenfeld direkt mit dem Button erreichen kann.
Aber wie mache ich das.
Hier mal der mom. Code:

Sub Symbolleiste_erstellen()
Set CB = Application.CommandBars.Add(Name:=Symbolleistenname, _
temporary:=True, Position:=msoBarTop)
CB.Visible = True
'Hauptmenü
Set CBC = CB.Controls.Add(Type:=msoControlButton)
With CBC
.Caption = "Hauptmenü"
.OnAction = "SPM_Index"
.Style = msoButtonCaption
.BeginGroup = True
End With
'Monate
Set CBC = CB.Controls.Add(Type:=msoControlButton)
With CBC
.Caption = " 1 "
.OnAction = "SPM_1"
.Style = msoButtonCaption
.BeginGroup = True
.TooltipText = "Arbeitszeitnachweis für den Monat Januar"
End With
Set CBC = CB.Controls.Add(Type:=msoControlButton)
With CBC
.Caption = " 2 "
.OnAction = "SPM_2"
.Style = msoButtonCaption
.BeginGroup = True
.TooltipText = "Arbeitszeitnachweis für den Monat Februar"
End With
'Dropdown CommandBars
Set CBC = CB.Controls.Add(Type:=msoControlDropdown)
With CBC
.Caption = "Untermenü"
.AddItem "An- und Abwesenheitstage"
.AddItem "Grundeinstellungen"
.AddItem "Jahresübersicht /-Kalender"
.AddItem "Sollarbeitszeiten"
.AddItem "Urlaubsplanung"
.ListIndex = 2
.OnAction = "AuswahlUntermenü"
.TooltipText = "Arbeitszeitnachweis Kurzmenü"
.Width = 150
'.DropDownWidth = 150
.BeginGroup = True
End With
'Listeneintrag auswählen
Set CBC = CB.Controls.Add(Type:=msoControlButton)
With CBC
.Caption = "



Sub Symbolleiste_löschen()
On Error Resume Next
Application.CommandBars(Symbolleistenname).Delete
End Sub



Sub AuswahlUntermenü()
Dim objList As CommandBarControl
Dim Auswahl As Byte
Set objList = CommandBars.ActionControl
Auswahl = objList.ListIndex
Select Case Auswahl
Case 1:
Call SPM_ANAB
Case 2:
Call SPM_GE
Case 3:
Call SPM_JUE
Case 4:
Call SPM_SAZ
Case 5:
Call SPM_UP
End Select
End Sub


Vielen Dank schonmal für Eure Hilfe

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eigene Symbolleiste - Listenfeldauswahl mit Bu
04.04.2008 09:38:00
Renee
Hi Markus,
Schau dir die .Parameter Eigenschaft von CommandBars.Controls an.
Weise bei der Generierung jedem Eintrag des Unternmenüs einen anderen Parameter zu. In 'Action'-Makro kannst du diesen dann abfragen:

DieserParameterWurdeÜbergeben = CommandBars.ActionControl.Parameter


GreetZ Renée

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige