Private Sub grpObject_AfterUpdate()
Dim strSQL As String
Select Case grpObject
Case acTable
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (Left([Name],4) <> 'Msys')" _
& " AND (MSysObjects.Type)=1" _
& " ORDER BY MSysObjects.Name;"
Case acQuery
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (MSysObjects.Type)=5" _
& " ORDER BY MSysObjects.Name;"
Case acForm
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (MSysObjects.Type)=-32768" _
& " ORDER BY MSysObjects.Name;"
Case acReport
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (MSysObjects.Type)= -32764" _
& " ORDER BY MSysObjects.Name;"
Case acMacro
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (MSysObjects.Type)= -32766" _
& " ORDER BY MSysObjects.Name;"
Case acModule
strSQL = "SELECT MSysObjects.Name FROM MsysObjects" _
& " WHERE (Left([Name],1)<>'~')" _
& " AND (MSysObjects.Type)= -32761" _
& " ORDER BY MSysObjects.Name;"
End Select
With lstObject
.RowSource = strSQL
.Requery
End With
End Sub