If what you are trying to accomplish is to get a list of tables in the database, you may want to go about it a different way. Instead of a query to the MSysObjects you could use a .GetSchema on the connection. I used this code for an Access 2003 database, it's probably a bit different for 2007 but they must have something similar. At least it would be a place for you to start researching.
Dim dtTables As New DataTable
Dim tempConn As New OleDb.OleDbConnection(gblstrConnectionString)
If tempConn.State <> ConnectionState.Open Then
tempConn.Open()
End If
Dim tblRestrictions As String() = New String() {Nothing, Nothing, Nothing, "TABLE"}
dtTables = tempConn.GetSchema("tables", tblRestrictions)
For Each row as DataRow In dtTables.Rows
Dim strTableName as String = row("Table_Name").ToString.Trim
Next