解决一个BUG-[怎么在ado中判断一个数据库中某个表是否已存在]

求助解决一个BUG-[如何在ado中判断一个数据库中某个表是否已存在]
VB code
'自己可用分太少了所有只能给20分了.请谅解.
'问题内容:如何在ado中判断一个数据库中某个表是否已存在?
'原讨论链接:http://community.csdn.net/expert/topicview1.asp?id=257974
'所属论坛:数据库(包含打印,安装,报表)     审核组:VB
'提问者:leadergao     解决者:
'感谢:acptvb
'关键字:VB 数据库 数据库(包含打印,安装,报表) 微软 参见 http dim 出错 参阅 满意度 表 重名
'答案:
'我要在一个数据库中新建一个表,(create table)但是如果数据库中已经存在这个表就会出错,如何解决这个问题 
'--------------------------- 感谢您使用微软产品。 

'在VB中,我们可以通过 Error Handler 来判断是否在当前数据库中有一个重名的表。 


'如下例子介绍了如何通过ADOX在Access中处理一个特发事件: 
'Use ADOX 
======== 
'Sample for Access 

Dim cnn As New Connection 
    Dim cat As New Catalog 
    Dim tbl As Table 
    cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
        "Data Source= c:\Program Files\Microsoft Office\" & _ 
        "Office\Samples\Northwind.mdb;" 
    Set cat.ActiveConnection = cnn 

for each tbl in cat.tables 

    if tbl.name="mytable" then   'BUG就在这句判断中,加上else的话就改句判断就失效了.
        msgbox "exist!"          '如果不加else的话,像现在就是正常的.
    end if 
next  


------解决方案--------------------
不好意思,上面随手了,测试了一下,用这个吧:
Dim cnn As New Connection
Dim cat As New Catalog
Dim tbl As Table
dim bol as boolean
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\a.mdb"
Set cat.ActiveConnection = cnn

For Each tbl In cat.Tables
bol= (tbl.Name = "表one") 
if bol then exit for
next
msgbox iif(bol,"存在","不存在")