Class clsHomePageObjects Private m_ContextBase 'Parent Private m_ContextLogo 'Child 1 Private m_ContextUserName 'Child 2 Public Function Collection ' Parent Dictionary Set m_ContextBase = CreateObject( "Scripting.Dictionary" ) ' Child Dictionaries: m_ContextLogo & m_ContextUserName Set m_ContextLogo = CreateObject( "Scripting.Dictionary" ) Set m_ContextUserName = CreateObject( "Scripting.Dictionary" ) ' Properties of the Object: Site Logo Image With m_ContextLogo ' Actual Object is the first Item/Key .Add "Me", Browser( "title:=Welcome: Mercury Tours" ).Image( "file name:=logo.gif" ) .Add "alt", "Mercury Tours" .Add "file name", "logo.gif" .Add "height", "100" 'Will Fail .Add "name", "Image" .Add "width", "100" End With ' Properties of the Object: UserName WebEdit With m_ContextUserName ' The first Item/Key must always contain the object .Add "Me", Browser( "title:=Welcome: Mercury Tours" ).WebEdit( "name:=userName" ) .Add "disabled", "0" .Add "height", "21" 'Will Fail .Add "kind", "singleline" .Add "name", "userName" .Add "readonly", "0" .Add "rows", "0" .Add "type", "text" .Add "width", "86" End With ' The Parent Dictionary stores both Child Dictionaries With m_ContextBase .Add "Logo", m_ContextLogo .Add "UserName", m_ContextUserName End With Set Collection = m_ContextBase End Function Public Sub Release Set m_ContextBase = Nothing Set m_ContextLogo = Nothing Set m_ContextUserName = Nothing End Sub ' Private and Public Variables ' Other Properties and Methods End Class ' Usage: Dim oNew: Set oNew = New clsHomePageObjects DoPropertiesConform oNew.Collection oNew.Release