Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 14
Default Adding "additional" controls programatically

I have code which creates a form if required - I am able to add standard
form controls this way, but I would like to add an "additional" control
(progress bar) to my programmatically created form. I can't seem to find any
examples of how to do this.
Could anyone help, please?

Thank You - Sean


  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 55
Default Adding "additional" controls programatically

Sean,

I haven't done this much but I think something like this - I assume a form
with a button on it. When you click the button another button is added:

Private Sub CommandButton1_Click()
Dim test_button As MSForms.CommandButton
Dim ctl As Control

'look under help for "Add" to get the other bstrProgIDs, but they follow the
form below
Set test_button = Me.Controls.Add(bstrProgID:="Forms.CommandButton.1 ",
Name:="btnTestButton", Visible:=True)
With test_button
.Caption = "Test Button"
End With
'It looks like you can only set location by recasting it as a generic
control
Set ctl = test_button
With ctl
.Top = 20
.Left = 20
End With
End Sub

John Walkenbach has a whole section on this he

http://www.j-walk.com/ss/excel/tips/tip76.htm

hth,

Doug

"What-A-Tool" wrote in message
...
I have code which creates a form if required - I am able to add standard
form controls this way, but I would like to add an "additional" control
(progress bar) to my programmatically created form. I can't seem to find
any examples of how to do this.
Could anyone help, please?

Thank You - Sean



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Adding "additional" controls programatically

Thank you for your help , however :
This works fine, as long as the control to add is part of the Forms
control group. I don't believe there is a Forms.Progressbar. How do I add a
control that isn't in this collection?


"Doug Glancy" wrote in message
...
Sean,

I haven't done this much but I think something like this - I assume a form
with a button on it. When you click the button another button is added:

Private Sub CommandButton1_Click()
Dim test_button As MSForms.CommandButton
Dim ctl As Control

'look under help for "Add" to get the other bstrProgIDs, but they follow
the form below
Set test_button = Me.Controls.Add(bstrProgID:="Forms.CommandButton.1 ",
Name:="btnTestButton", Visible:=True)
With test_button
.Caption = "Test Button"
End With
'It looks like you can only set location by recasting it as a generic
control
Set ctl = test_button
With ctl
.Top = 20
.Left = 20
End With
End Sub

John Walkenbach has a whole section on this he

http://www.j-walk.com/ss/excel/tips/tip76.htm

hth,

Doug

"What-A-Tool" wrote in message
...
I have code which creates a form if required - I am able to add standard
form controls this way, but I would like to add an "additional" control
(progress bar) to my programmatically created form. I can't seem to find
any examples of how to do this.
Could anyone help, please?

Thank You - Sean





  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,593
Default Adding "additional" controls programatically

If you want a progress bar, as you note there is no built-in control (there
may be commercial controls, but I know of none), but you could just add the
usual type of progress indicator as described here
http://www.enhanceddatasystems.com/E...rogressBar.htm

--
---
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)



"What-A-Tool" wrote in message
...
Thank you for your help , however :
This works fine, as long as the control to add is part of the Forms
control group. I don't believe there is a Forms.Progressbar. How do I add
a control that isn't in this collection?


"Doug Glancy" wrote in message
...
Sean,

I haven't done this much but I think something like this - I assume a
form with a button on it. When you click the button another button is
added:

Private Sub CommandButton1_Click()
Dim test_button As MSForms.CommandButton
Dim ctl As Control

'look under help for "Add" to get the other bstrProgIDs, but they follow
the form below
Set test_button = Me.Controls.Add(bstrProgID:="Forms.CommandButton.1 ",
Name:="btnTestButton", Visible:=True)
With test_button
.Caption = "Test Button"
End With
'It looks like you can only set location by recasting it as a generic
control
Set ctl = test_button
With ctl
.Top = 20
.Left = 20
End With
End Sub

John Walkenbach has a whole section on this he

http://www.j-walk.com/ss/excel/tips/tip76.htm

hth,

Doug

"What-A-Tool" wrote in message
...
I have code which creates a form if required - I am able to add standard
form controls this way, but I would like to add an "additional" control
(progress bar) to my programmatically created form. I can't seem to find
any examples of how to do this.
Could anyone help, please?

Thank You - Sean







  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Adding "additional" controls programatically

"Bob Phillips" wrote in message
...
If you want a progress bar, as you note there is no built-in control
(there may be commercial controls, but I know of none), but you could just
add the usual type of progress indicator as described here
http://www.enhanceddatasystems.com/E...rogressBar.htm

--
---
HTH

Bob


So you are saying there is no way to programatically add the Microsoft
ProgressBar Control, Version 5.0 or Version 6.0, that I have available in
the "Addtional Controls" dialog box accesible from the tools menu? These
controls are contained in comctl32.ocx, or MSCOMCTL.OCX, respectively. Is
there a way to programatically create a reference to 1 of these .ocx files,
and add the control from there?

Thanks Bob -
Sean




  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 55
Default Adding "additional" controls programatically

Sean,

I don't know how to do what you ask.

I think controls are usurally added at runtime in situations where the exact
number of controls needed is not yet known, for example, one textbox per
record, when the number of records to be entered can't be known at design
time.

If this is not the case with your application. perhaps you could add the
progress bar to the bottom of your form at design time, and just expand the
form during run time when you want the bar to be visible?

just a thought,

Doug

"What-A-Tool" wrote in message
...
"Bob Phillips" wrote in message
...
If you want a progress bar, as you note there is no built-in control
(there may be commercial controls, but I know of none), but you could
just add the usual type of progress indicator as described here
http://www.enhanceddatasystems.com/E...rogressBar.htm

--
---
HTH

Bob


So you are saying there is no way to programatically add the Microsoft
ProgressBar Control, Version 5.0 or Version 6.0, that I have available in
the "Addtional Controls" dialog box accesible from the tools menu? These
controls are contained in comctl32.ocx, or MSCOMCTL.OCX, respectively. Is
there a way to programatically create a reference to 1 of these .ocx
files, and add the control from there?

Thanks Bob -
Sean



  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,489
Default Adding "additional" controls programatically

Hi,

This works for me. Adds progress bar to userform and when the form is
clicked will do a simple 1 to 100 prorgess.

Private m_objPBar As Object
Private Sub UserForm_Click()

Dim lngIndex As Long
Dim lngLoop As Long

m_objPBar.Value = 0
For lngIndex = 1 To 100
For lngLoop = 1 To 599999
Next
m_objPBar.Value = m_objPBar.Value + 1
Next

End Sub
Private Sub UserForm_Initialize()

Set m_objPBar = _
Me.Controls.Add("MSComctlLib.ProgCtrl.2", "myProg", True)

With m_objPBar
.Top = 5
.Left = 5
.Width = Me.InsideWidth - 10
.Height = 15
.Value = 0
End With

End Sub

Cheers
Andy

What-A-Tool wrote:
"Bob Phillips" wrote in message
...

If you want a progress bar, as you note there is no built-in control
(there may be commercial controls, but I know of none), but you could just
add the usual type of progress indicator as described here
http://www.enhanceddatasystems.com/E...rogressBar.htm

--
---
HTH

Bob



So you are saying there is no way to programatically add the Microsoft
ProgressBar Control, Version 5.0 or Version 6.0, that I have available in
the "Addtional Controls" dialog box accesible from the tools menu? These
controls are contained in comctl32.ocx, or MSCOMCTL.OCX, respectively. Is
there a way to programatically create a reference to 1 of these .ocx files,
and add the control from there?

Thanks Bob -
Sean


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
Adding data only if adjacent to cell labeled "male"/"female" lovesrubbaducky Excel Worksheet Functions 1 November 23rd 09 05:49 PM
Help neededin adding an additional "Warning Flag" to my current lo Danny Boy Excel Worksheet Functions 1 June 10th 09 02:50 PM
Programatically adding macro to Excel - "ThisWorkbook" Aerojade Excel Discussion (Misc queries) 3 October 1st 08 12:53 PM
CommandBars("Worksheet Menu Bar").Controls("Tools").Enabled = Fals Arturo Excel Programming 3 May 26th 05 05:44 PM
Can ActiveX controls be "disabled" and "enabled"? William DeLeo Excel Programming 1 May 7th 04 09:10 PM


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