entao vamos lá inclua a referencia a dll TLBINF32.DLL depois execute o codigo
chamada a função iterateMembers Text1
Sub iterateMembers(obj As Object)
Dim TLI As New TLIApplication, ret As Variant
Dim interface As InterfaceInfo
Dim member As MemberInfo
Dim strDtSrc
Dim strData As String
On Error Resume Next
Set interface = TLI.InterfaceInfoFromObject(obj)
Dim index As Long, tempstr As String, idxPos As Long
ReDim str(interface.Members.Count) As String
index = 0
For Each member In interface.Members
tempstr = ""
tempstr = tempstr & member.Name & vbTab & member.VTableOffset & vbTab & Hex$(member.MemberId) & _
vbTab & member.HelpString
'get property value; using memberID is faster than member.Name
ret = TLI.InvokeHook(Text1, member.MemberId, INVOKE_PROPERTYGET)
'adjust long values; convert to hex (else shows neg value)
If TypeName(ret) = "Long" Then
ret = "&H" & Hex(ret) & "&"
tempstr = tempstr & vbTab & ret & vbTab & "long"
Else
tempstr = tempstr & vbTab & ret & vbTab & TypeName(ret)
End If
'store row data in array
If Mid$(tempstr, 1, 10) = "DataSource" Then
idxPos = index
End If
str(index) = tempstr
index = index + 1
Next
Set TLI = Nothing
strDtSrc = Split(str(idxPos))
strData = Mid$(strDtSrc(18), 2)
strDtSrc = Split(strData, vbTab)
End Sub