Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default command bars

Hello,

I tried the following code (I get it from somebody, don't remember wh
…) to hide the normally used commandbars when entering an applicatio
and reinstall the same used commandbars again when leaving the program
The hiding works fine, but when leaving the application, the followin
message comes:

"Runtime error 9, Index outside valid array."

Whats wrong with the code.

The code:

Public arrayCB As Variant

Private Sub Workbook_Open()

Dim myCB As CommandBar
Dim ii As Long

ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
ReDim Preserve aryCBs(ii)
arrayCB(ii) = myCB.Name
myCB.Visible = False
ii = ii + 1
End If
Next myCB
Application.CommandBars("Worksheet Menu Bar").Visible = False

With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim ii As Long

For ii = LBound(arrayCB) To UBound(arrayCB)
Application.CommandBars(arrayCB(ii)).Visible = True
Next ii

End Sub


… thanks Sigg

--
Message posted from http://www.ExcelForum.com

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10
Default command bars

The code:

Public arrayCB As Variant


Try using: Private arrayCB() as String


Private Sub Workbook_Open()

Dim myCB As CommandBar
Dim ii As Long

ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
ReDim Preserve aryCBs(ii)


I presume this should be ReDim Preserve arrayCB(ii)

Hope this helps
Fred


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,718
Default command bars

Put this code in a regular module:

Public arrayCB() As String

Sub HideOpenToolbars()
Dim myCB As CommandBar
Dim ii As Long

ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
If myCB.Type < msoBarTypeMenuBar Then
ReDim Preserve arrayCB(ii)
arrayCB(ii) = myCB.Name
myCB.Visible = False
ii = ii + 1
End If
End If
Next myCB
Application.CommandBars("Worksheet Menu Bar").Enabled = False

With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With
End Sub

Private Sub UnhideToolbars()
Dim ii As Long
For ii = LBound(arrayCB) To UBound(arrayCB)
Application.CommandBars(arrayCB(ii)).Visible = True
Next ii
Application.CommandBars("Worksheet Menu Bar").Enabled = True
With Application
.DisplayFormulaBar = True
.DisplayStatusBar = True
End With
End Sub

And in the ThisWorkbook module, call it:

Private Sub Workbook_Open()
HideOpenToolbars
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
UnhideToolbars
End Sub


--
Jim Rech
Excel MVP
"Geo Siggy " wrote in message
...
| Hello,
|
| I tried the following code (I get it from somebody, don't remember who
| …) to hide the normally used commandbars when entering an application
| and reinstall the same used commandbars again when leaving the program.
| The hiding works fine, but when leaving the application, the following
| message comes:
|
| "Runtime error 9, Index outside valid array."
|
| Whats wrong with the code.
|
| The code:
|
| Public arrayCB As Variant
|
| Private Sub Workbook_Open()
|
| Dim myCB As CommandBar
| Dim ii As Long
|
| ReDim arrayCB(0)
| For Each myCB In Application.CommandBars
| If myCB.Visible Then
| ReDim Preserve aryCBs(ii)
| arrayCB(ii) = myCB.Name
| myCB.Visible = False
| ii = ii + 1
| End If
| Next myCB
| Application.CommandBars("Worksheet Menu Bar").Visible = False
|
| With Application
| DisplayFormulaBar = False
| DisplayStatusBar = False
| End With
|
| End Sub
|
| Private Sub Workbook_BeforeClose(Cancel As Boolean)
|
| Dim ii As Long
|
| For ii = LBound(arrayCB) To UBound(arrayCB)
| Application.CommandBars(arrayCB(ii)).Visible = True
| Next ii
|
| End Sub
|
|
| … thanks Siggy
|
|
| ---
| Message posted from http://www.ExcelForum.com/
|


  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 391
Default command bars

First, explicitly dim all your variables - at the top of
the module:
Option Explicit

then when you compile you'll see that your variable names
are screwed for one

-----Original Message-----
Hello,

I tried the following code (I get it from somebody,

don't remember who
.) to hide the normally used commandbars when entering

an application
and reinstall the same used commandbars again when

leaving the program.
The hiding works fine, but when leaving the application,

the following
message comes:

"Runtime error 9, Index outside valid array."

Whats wrong with the code.

The code:

Public arrayCB As Variant

Private Sub Workbook_Open()

Dim myCB As CommandBar
Dim ii As Long

ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
ReDim Preserve aryCBs(ii)
arrayCB(ii) = myCB.Name
myCB.Visible = False
ii = ii + 1
End If
Next myCB
Application.CommandBars("Worksheet Menu Bar").Visible =

False

With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim ii As Long

For ii = LBound(arrayCB) To UBound(arrayCB)
Application.CommandBars(arrayCB(ii)).Visible = True
Next ii

End Sub


. thanks Siggy


---
Message posted from http://www.ExcelForum.com/

.

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,272
Default command bars

and Worksheet Menu Bar uses the Enabled property not visible.

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"Patrick Molloy" wrote in message
...
First, explicitly dim all your variables - at the top of
the module:
Option Explicit

then when you compile you'll see that your variable names
are screwed for one

-----Original Message-----
Hello,

I tried the following code (I get it from somebody,

don't remember who
.) to hide the normally used commandbars when entering

an application
and reinstall the same used commandbars again when

leaving the program.
The hiding works fine, but when leaving the application,

the following
message comes:

"Runtime error 9, Index outside valid array."

Whats wrong with the code.

The code:

Public arrayCB As Variant

Private Sub Workbook_Open()

Dim myCB As CommandBar
Dim ii As Long

ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
ReDim Preserve aryCBs(ii)
arrayCB(ii) = myCB.Name
myCB.Visible = False
ii = ii + 1
End If
Next myCB
Application.CommandBars("Worksheet Menu Bar").Visible =

False

With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim ii As Long

For ii = LBound(arrayCB) To UBound(arrayCB)
Application.CommandBars(arrayCB(ii)).Visible = True
Next ii

End Sub


. thanks Siggy


---
Message posted from http://www.ExcelForum.com/

.





  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default command bars

Hi,
I used the following code (from Jim) for hiding and unhiding th
commandbars,
but still the following error message appears:
" Runtime error 9, Index outside valid array" marking the following
code line:
"For ii = LBound(arrayCB) To UBound(arrayCB)"

Whats still wrong ?

Here is the used code:

Sub HideOpenToolbars()
Dim myCB As CommandBar
Dim ii As Long
ReDim arrayCB(0)
For Each myCB In Application.CommandBars
If myCB.Visible Then
If myCB.Type < msoBarTypeMenuBar Then
ReDim Preserve arrayCB(ii)
arrayCB(ii) = myCB.Name
myCB.Visible = False
ii = ii + 1
End If
End If
Next myCB
Application.CommandBars("Worksheet Menu Bar").Enabled = True
With Application
.DisplayFormulaBar = False
.DisplayStatusBar = False
End With
End Sub


Sub UnhideToolbars()
Dim ii As Long
For ii = LBound(arrayCB) To UBound(arrayCB)
Application.CommandBars(arrayCB(ii)).Visible = True
Next ii
Application.CommandBars("Worksheet Menu Bar").Enabled = True
Application.CommandBars("Worksheet Menu Bar").Visible = True
With Application
.DisplayFormulaBar = True
.DisplayStatusBar = True
End With
End Sub


Private Sub Workbook_Open()
HideOpenToolbars
...
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
UnhideToolbars
...
End Sub


Whats wrong ?
Any idea ?
Thanks
Sigg

--
Message posted from http://www.ExcelForum.com

  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default command bars

Hi,
I forgot,
I also used the declaration

Public arrayCB() As String

... Sigg

--
Message posted from http://www.ExcelForum.com

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
programming command bars Little Elephant with Big Ears Excel Discussion (Misc queries) 3 January 15th 10 07:16 PM
Custom Command Bars barrowhill Excel Discussion (Misc queries) 1 March 29th 08 02:19 PM
Command Bars KneeDown2Up Excel Discussion (Misc queries) 4 January 16th 07 05:43 PM
help! How do I restore command bars? nrussell New Users to Excel 5 May 26th 05 08:19 PM
Attaching Command Bars to Add-IN Thomas Herr Excel Programming 3 April 5th 04 08:38 PM


All times are GMT +1. The time now is 03:18 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"