Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Correct Useage of .FindControls

Hey All,

Not able to find any helpful resources on MSDN or by search on this forum, I
am wondering if anyone can help me correctly use FindControls. I am creating
a number of commandBars, but right now, just trying to get one to work now.

I am trying to implement findControls, so that, before I create another
button, it doesn't already exist... Have to check this b/c if vb IDE is
opened while my workbook is opened, some strange things happen with
workbook_open().

Anyway, hopefully I am clear enough. Here is my code (commented line of code
that isn't valid).

Code:

Public myThing5 As Office.CommandBar Public temp As
Office.CommandBarControls Sub Workbook_BeforeClose(Cancel As Boolean)
myThing5.Delete End Sub Sub Workbook_Open() Set temp =
CommandBars.FindControls(, , "test") 'NOT VALID If TypeName(temp) = "Nothing"
Then Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
End If UserForm1.Show vbModeless End Sub


Thanks!
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,441
Default Correct Useage of .FindControls

Forget .Findcontrols. Just delete it before adding a new one

Public myThing5 As Office.CommandBar
Public temp As Office.CommandBarControls

Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
myThing5.Delete
End Sub

Sub Workbook_Open()
Application.CommandBars("test").Delete
Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
UserForm1.Show vbModeless
End Sub

HTH,
Bernie
MS Excel MVP


"pgag45" wrote in message
...
Hey All,

Not able to find any helpful resources on MSDN or by search on this forum, I
am wondering if anyone can help me correctly use FindControls. I am creating
a number of commandBars, but right now, just trying to get one to work now.

I am trying to implement findControls, so that, before I create another
button, it doesn't already exist... Have to check this b/c if vb IDE is
opened while my workbook is opened, some strange things happen with
workbook_open().

Anyway, hopefully I am clear enough. Here is my code (commented line of code
that isn't valid).

Code:

Public myThing5 As Office.CommandBar Public temp As
Office.CommandBarControls Sub Workbook_BeforeClose(Cancel As Boolean)
myThing5.Delete End Sub Sub Workbook_Open() Set temp =
CommandBars.FindControls(, , "test") 'NOT VALID If TypeName(temp) = "Nothing"
Then Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
End If UserForm1.Show vbModeless End Sub


Thanks!



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,441
Default Correct Useage of .FindControls

The open routine should have this as the first line, too.

On Error Resume Next

Sorry about that.


HTH,
Bernie
MS Excel MVP


"Bernie Deitrick" <deitbe @ consumer dot org wrote in message
...
Forget .Findcontrols. Just delete it before adding a new one

Public myThing5 As Office.CommandBar
Public temp As Office.CommandBarControls

Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
myThing5.Delete
End Sub

Sub Workbook_Open()
Application.CommandBars("test").Delete
Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
UserForm1.Show vbModeless
End Sub

HTH,
Bernie
MS Excel MVP


"pgag45" wrote in message
...
Hey All,

Not able to find any helpful resources on MSDN or by search on this forum, I
am wondering if anyone can help me correctly use FindControls. I am creating
a number of commandBars, but right now, just trying to get one to work now.

I am trying to implement findControls, so that, before I create another
button, it doesn't already exist... Have to check this b/c if vb IDE is
opened while my workbook is opened, some strange things happen with
workbook_open().

Anyway, hopefully I am clear enough. Here is my code (commented line of code
that isn't valid).

Code:

Public myThing5 As Office.CommandBar Public temp As
Office.CommandBarControls Sub Workbook_BeforeClose(Cancel As Boolean)
myThing5.Delete End Sub Sub Workbook_Open() Set temp =
CommandBars.FindControls(, , "test") 'NOT VALID If TypeName(temp) = "Nothing"
Then Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
End If UserForm1.Show vbModeless End Sub


Thanks!





  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,123
Default Correct Useage of .FindControls

Simple delete it first before you add it.

Use

On error resume next
'delete code
on error goto 0

--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pgag45" wrote in message ...
Hey All,

Not able to find any helpful resources on MSDN or by search on this forum, I
am wondering if anyone can help me correctly use FindControls. I am creating
a number of commandBars, but right now, just trying to get one to work now.

I am trying to implement findControls, so that, before I create another
button, it doesn't already exist... Have to check this b/c if vb IDE is
opened while my workbook is opened, some strange things happen with
workbook_open().

Anyway, hopefully I am clear enough. Here is my code (commented line of code
that isn't valid).

Code:

Public myThing5 As Office.CommandBar Public temp As
Office.CommandBarControls Sub Workbook_BeforeClose(Cancel As Boolean)
myThing5.Delete End Sub Sub Workbook_Open() Set temp =
CommandBars.FindControls(, , "test") 'NOT VALID If TypeName(temp) = "Nothing"
Then Set myThing5 = Application.CommandBars.Add("test", msoBarPopup, , True)
End If UserForm1.Show vbModeless End Sub


Thanks!

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Correct Useage of .FindControls

thanks for the help, but still not quite working...

with this code:

Public myThing5 As Office.CommandBar
Public temp As Office.CommandBarControls

Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
myThing5.Delete
End Sub

Sub Workbook_Open()
On Error Resume Next
Application.CommandBars("test2").Delete
Set myThing5 = Application.CommandBars.Add("test2", msoBarPopup, , True)
UserForm1.Show vbModeless
End Sub


Still doesn't work quite right... Works perfect until IDE is opened. Then if
you go back to the form the button, with the following line of code:
ThisWorkbook.myThing5.ShowPopup

no longer works...

I can attach this very small demo book if you would like to see/test this
phenomenon.


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Correct Useage of .FindControls

meh.. if I throw in a

Private Sub cmdShowMenu_Click()
On Error Resume Next
ThisWorkbook.myThing5.ShowPopup
End Sub

if the IDE is opened... it doesn't crash, it just doesn't work..
  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,600
Default Correct Useage of .FindControls

You would only qualify myThing5 with Thisworkbook if myThing was declared
public in the Thisworkbook module, and Thisworkbook contains the running
code.

If the popup is only to be used in your userform I would create it as needed
and destroy it immediately after, eg

' userform code
Private myThing5 As Office.CommandBar

Private Sub CommandButton1_Click()
On Error Resume Next
Application.CommandBars("test2").Delete ' just in case
On Error GoTo 0

Set myThing5 = Application.CommandBars.Add("test2", msoBarPopup, , True)
With myThing5.Controls.Add(1, , , , True)
.Caption = "my Macro"
.Visible = True
'.OnAction = "myMacro"
' etc
End With

myThing5.ShowPopup

done:
On Error Resume Next
myThing5.Delete

Exit Sub
errH:
Resume done

End Sub

Regards,
Peter t


"pgag45" wrote in message
...
meh.. if I throw in a

Private Sub cmdShowMenu_Click()
On Error Resume Next
ThisWorkbook.myThing5.ShowPopup
End Sub

if the IDE is opened... it doesn't crash, it just doesn't work..



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
Excel 2003 - open work book useage agreement mbotfield Excel Worksheet Functions 3 September 23rd 09 04:53 PM
FindControls ID Bogdan Excel Programming 1 April 27th 07 09:00 PM
CPU useage at 100% on EXCEL.EXE Dave Patrick Excel Discussion (Misc queries) 0 January 1st 07 03:01 AM
IF Statement useage BThrasher Excel Discussion (Misc queries) 4 May 18th 06 03:21 PM
MsgBox Useage Jeff[_24_] Excel Programming 2 November 7th 03 01:08 PM


All times are GMT +1. The time now is 02:57 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"