vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest środa, 08 września 2010 roku.
Ustaw jako stronę startową Ulubione Napisz
PowrótPowrót do serwisu  RegulaminRegulamin rssRSS

  tytuł wątku:
Wątki dyskusji

VBA a pasek narzędzi w Excel


otwartyotwarty rozpoczął: emguziol postów: 2



napisał: admin
postów: 461


umieszczony:
16 marca 2010
10:57

edytowany:
16 marca 2010
10:58

  
Witam,

Istnieją dwie metody rozwiązania Twojego problemu:
1. Wykorzystanie pliku *.xlb, przechowywanego w zależności od wersji MS Office w rożnych katalogach.
Popatrz tutaj: http://office.microsoft.com/en-us/excel/HP030721011033.aspx

2. Napisanie procedury, która będzie w momencie startu Twojego makra tworzyć paski narzędzi i przyciski.
Poniżej mój przykład:

Sub SetToolbar()

'Deklaracja
Dim cbMyToolbar As CommandBar
Dim cbtMyButton As CommandBarButton

Dim cbToolbar As CommandBar
Dim cbtButton As CommandBarButton

Dim bToolbarExists As Boolean, bButtonExists As Boolean

bToolbarExists = False: bButtonExists = False

'Nazwa makra podpietego do przycisku
'oraz nazwa paska narzedzi
Const strNazwaMakra = "nazwa_makra"
Const strToolbarName = "nazwa_paska"
Const strButtonLabel = "Etykieta przycisku"

'Sprawdzanie czy pasek narzedzi i przycisk istnieja
For Each cbToolbar In Application.CommandBars
    If cbToolbar.Name = strToolbarName Then
        bToolbarExists = True
        For Each cbtButton In Application.CommandBars(strToolbarName).Controls
            If cbtButton.Caption = strButtonLabel Then bButtonExists = True
        Next cbtButton
    End If
Next cbToolbar

If bToolbarExists Then
    Set cbMyToolbar = Application.CommandBars(strToolbarName)
Else
    'dodawanie paska narzedzi
    Set cbMyToolbar = Application.CommandBars.Add(strToolbarName)
    cbMyToolbar.Position = msoBarTop
End If
    
'Pasek narzedzi widoczny po wlaczeniu makra
cbMyToolbar.Visible = True


If Not bButtonExists Then
    'dodawanie przycisku
    Set cbtMyButton = cbMyToolbar.Controls.Add(Type:=msoControlButton)
    cbtMyButton.DescriptionText = strButtonLabel
    cbtMyButton.Caption = strButtonLabel
    cbtMyButton.OnAction = strNazwaMakra
    cbtMyButton.Style = msoButtonCaption
End If

Set cbMyToolbar = Nothing
Set cbtMyButton = Nothing

End Sub



Cytat:
Jestem tu nowy, więc na początku witam wszystkich.

Potrzebuje pomocy w związku z własnym paskiem narzędzi w Excelu. Mój problem polega na tym, że nie wiem jak przenieść pasek narzędzi wraz z programami przypisanymi do jego przycisków, na inne komputery. Próbowałem używać pliku .xla, ale potrafię dzięki niemu przenieść tylko programy. Pasek narzędzi muszę tworzyć na nowo na każdym komputerze. Jest dla mnie niejasnym sposób przechowywania zapisanych pasków narzędzi i programów VBA w Excelu.
Dodam, że pracuję na win XP i Excel 2003.
Uprzejmie proszę o pomoc w rozwiązaniu tego problemu. Będę wdzięczny za jakiekolwiek wskazówki.
Reklama
napisał: emguziol
postów: 1


umieszczony:
12 marca 2010
12:56

  
Jestem tu nowy, więc na początku witam wszystkich.

Potrzebuje pomocy w związku z własnym paskiem narzędzi w Excelu. Mój problem polega na tym, że nie wiem jak przenieść pasek narzędzi wraz z programami przypisanymi do jego przycisków, na inne komputery. Próbowałem używać pliku .xla, ale potrafię dzięki niemu przenieść tylko programy. Pasek narzędzi muszę tworzyć na nowo na każdym komputerze. Jest dla mnie niejasnym sposób przechowywania zapisanych pasków narzędzi i programów VBA w Excelu.
Dodam, że pracuję na win XP i Excel 2003.
Uprzejmie proszę o pomoc w rozwiązaniu tego problemu. Będę wdzięczny za jakiekolwiek wskazówki.


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z