[Excel/VBA] Hoe een seperator aan menu toevoegen?

Pagina: 1
Acties:

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Topicstarter
Jaja...

Hoe gaat dat :? Voor mij is het een raadsel en voor sommige wellicht gewoon heel simpel...

Momenteel wil ik een eigen custom icon bar maken binnen MS Excel 2000 en dat doe ik middels de volgende code...
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
    Toolbars.Add Name:="Test icons"

    With Toolbars("Test icons")
      .Visible = True
      .Position = xlTop
      .Left = 908       'Hierdoor helemaal rechts :)
      .Top = 4
    End With
    
    Toolbars("Test icons").ToolbarButtons.Add Button:=129, before:=1  'Arrow left
    Toolbars("Test icons").ToolbarButtons.Add Button:=130, before:=2  'Arrow right
    Toolbars("Test icons").ToolbarButtons.Add Button:=100, before:=3  'Run A
    Toolbars("Test icons").ToolbarButtons.Add Button:=100, before:=4  'Run B
    Toolbars("Test icons").ToolbarButtons.Add Button:=100, before:=5  'Run C
    Toolbars("Test icons").ToolbarButtons.Add Button:=100, before:=6  'Run D
    Toolbars("Test icons").ToolbarButtons.Add Button:=3, before:=7    'Print
    
    Toolbars("Test icons").ToolbarButtons(1).Name = "Arrow left"
    Toolbars("Test icons").ToolbarButtons(2).Name = "Arrow right"
    Toolbars("Test icons").ToolbarButtons(3).Name = "Run A"
    Toolbars("Test icons").ToolbarButtons(4).Name = "Run B"
    Toolbars("Test icons").ToolbarButtons(5).Name = "Run C"
    Toolbars("Test icons").ToolbarButtons(6).Name = "Run D"
    Toolbars("Test icons").ToolbarButtons(7).Name = "Print sheet"
    
    Toolbars("Test icons").ToolbarButtons(1).OnAction = "M_Arrow_left"
    Toolbars("Test icons").ToolbarButtons(2).OnAction = "M_Arrow_right"
    Toolbars("Test icons").ToolbarButtons(3).OnAction = "M_Run_A"
    Toolbars("Test icons").ToolbarButtons(4).OnAction = "M_Run_B"
    Toolbars("Test icons").ToolbarButtons(5).OnAction = "M_Run_C"
    Toolbars("Test icons").ToolbarButtons(6).OnAction = "M_Run_D"
    Toolbars("Test icons").ToolbarButtons(7).OnAction = "M_Print"

Nu wil ik graag voor Run A en voor de print knop een seperator toevoegen, om het één en ander een beetje te scheiden aangezien we anders het overzicht gaan missen. Dit kon voorheen op de volgende manier:
code:
1
Toolbars("Test icons").ToolbarButtons.Add Button:=0, before:=7

Het bovenstaande stukje code zette je dan direct achter de plek waar je net de button had gecreeërd.

Dit werkt ook nog wel, maar het gaat fout wanneer ik meer dan één seperator toe wil voegen.

Vraag: Weet iemand van jullie hoe ik dit moet oplossen of weet iemand wellicht een betere manier om 'Toolbars' te creëren in Excel. Want dit is geloof ik de oude Excel 97 manier, maar zeker weten doe ik dat ook niet.

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

ipv Toolbar kun je CommandBars gebruiken op vergelijkbare wijze als je nu doet (zie HELP e.d.)

Zo'n commandbar heeft een property "BeginGroup" ... dat is wat je zoekt..

Als je bijvoorbeeld 4 knoppen hebt

1 2 | 3 4

Dan zet je in dit geval de property "BeginGroup" van de 3e knop op True.
code:
1
Application.CommandBars("MyToolbar").Controls(3).BeginGroup = True

SIZE does matter.
"You're go at throttle up!"