![]() |
How can I find type of control on a form
I would like to loop through all controls on a custom form and only process
those that are checkbox controls, or textboxes, or labels, etc. In VBA form module, I was thinking it would be possible to do something like this: dim c as control for each c in me.controls if c.type = xlcheckbox (or whatever the correct constant should be) then checkboxCount = checkboxCount + 1 end if next c The problem is that there isn't a type property for a control. Can someone tell me how to do this. I read in help that it was possible to loop thru the controls on worksheets by looping through the shapes collection, testing to see if it is a control, then testing to see if it is a checkbox; however I am interested in looping through controls on a form. |
How can I find type of control on a form
Maybe this will work:
Dim s as Shape For Each s In Worksheets(mySheet).Shapes If s.Type = msoFormControl Then If s.FormControlType = xlCheckBox Then _ 'Do something fabulous End If Next "John T Ingato" wrote: I would like to loop through all controls on a custom form and only process those that are checkbox controls, or textboxes, or labels, etc. In VBA form module, I was thinking it would be possible to do something like this: dim c as control for each c in me.controls if c.type = xlcheckbox (or whatever the correct constant should be) then checkboxCount = checkboxCount + 1 end if next c The problem is that there isn't a type property for a control. Can someone tell me how to do this. I read in help that it was possible to loop thru the controls on worksheets by looping through the shapes collection, testing to see if it is a control, then testing to see if it is a checkbox; however I am interested in looping through controls on a form. |
All times are GMT +1. The time now is 09:19 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com