在VBA记录集的Filter属性中使用NOT LIKE

问题描述:

我正在使用excel 2003使用VBA记录集连接到SYBASE数据库。我想过滤记录。在VBA记录集的Filter属性中使用NOT LIKE

以下是我用过的代码。

Dim rset As New ADODB.Recordset 
rset.Open sQuery, m_db, adOpenForwardOnly 
rset.Filter = "Name NOT LIKE 'Dav%'" 
rset.Requery 

但它不工作,并返回所有行。如果我使用名称LIKE'Dav%',则正确返回名称以Dav开头的记录。

Not LIKE有什么问题?我错过了什么吗?

此外,我需要使用Requery来获得过滤器的工作。它真的需要吗?

在此先感谢。

NOT关键字不允许在过滤器属性中使用。

+0

是否有'NOT'语句以及'AND','OR','LIKE'? – 2016-04-07 13:33:39

也许你可以在sQuery值中包含NOT LIKE。 Like:

select * from NamesTable where [name] NOT LIKE 'Dav%' 
+0

好的建议。 – JeffO 2010-06-26 11:44:17