Checkbox from toolbox
Thanks Leith and Dave
This sort of feedback, from both of you, I find very useful as it gives
me a chance to experiment and learn new ways of doing things, which
invariably leads to neater and less code.
Cheers
Andy
Dave Peterson wrote:
And there are other ways to check.
Instead of:
If .OLEObjects(I).ProgId = ChkBoxId Then
I'd use:
If typeof .OLEObjects(I).object is msforms.checkbox then
I find it a bit more intuitive. (but it's pretty much dealer's choice.)
Andy wrote:
Thank you Leith. Works perfectly.
Just to clarify and hopefully learn something in the process.
So the word OLEobjects refers to all control toolbox buttons, checkboxes
etc on the sheet.
So the code counts all the OLEObjects on the sheet. Using a for loop It
then checks each one to ensure it is a checkbox and then assigns the
value FALSE (unchecked).
Thanks again
Andy
Leith Ross wrote:
Hello Andy,
This will clear all the checkboxes it finds on the active worksheet,
regardless of their names. Copy this code and placce it in a VBA
module.
Code:
--------------------
Sub ClearAllCheckBoxes()
Dim ChkBoxId As String
ChkBoxId = "Forms.CheckBox.1"
With ActiveSheet
For I = 1 To .OLEObjects.Count
If .OLEObjects(I).ProgId = ChkBoxId Then
.OLEObjects(I).Object.Value = False
End If
Next I
End With
End Sub
--------------------
Sincerely,
Leith Ross
|