View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
RB Smissaert RB Smissaert is offline
external usenet poster
 
Posts: 2,452
Default get HelpContextID's or Tags of all userforms

Peter,

Thanks, nice and simple. Will try that in a bit.

Are you saying that I can set these properties at runtime
and then save the project and retain it?
That would be a great help as I could then for example
do it all from a sheet range, rather then going into each control.

RBS


"Peter T" <peter_t@discussions wrote in message
...
In fact I need to list all the HelpContextID's and Tags of all the

possible
controls of all the Userforms


For each ctl In oVBComp.Designer.Controls
debug.? ctl.Tag, ctl.HelpContextID
Next

FWIW, you can also "permanently" write these properties subject to then
saving the project.

Regards,
Peter T


"RB Smissaert" wrote in message
...
Hi Peter,

Thanks, will give that a try.
In fact I need to list all the HelpContextID's and Tags of all the

possible
controls of all the Userforms
in the project.
This in connection with a big html help (WebHelp) file.
So I will need 2 For Each loops.

RBS


"Peter T" <peter_t@discussions wrote in message
...
Hi Bart,

Try inserting the following after your "If oVBComp.Type = 3 Then"

For Each p In oVBComp.Properties
'Debug.Print p.Name
If p.Name = "Tag" Then
MsgBox p.Value, , oVBComp.Name
End If
If p.Name = "HelpContextID" Then
MsgBox p.Value, , oVBComp.Name
End If
Next

Of course if you could get same from the userform object though that

means
loading it.

Regards,
Peter T

"RB Smissaert" wrote in message
...
Is there a way to get all the HelpContextID's or Tags of all the
userforms
in a project?
I can get all the names of all the forms, but sofar no success to get

the
HelpContextID's or Tags.

Sub test()

Dim oVBProj As VBProject
Dim oVBComp As VBComponent

Set oVBProj = ThisWorkbook.VBProject

On Error Resume Next

For Each oVBComp In oVBProj.VBComponents
If oVBComp.Type = 3 Then
MsgBox oVBComp.Name
End If
Next

End Sub

Thanks for any advice.


RBS