2010-01-08 13 views
0

J'utilise Excel 2003 pour me connecter à la base de données SYBASE à l'aide du jeu d'enregistrements VBA. Je veux filtrer les enregistrements.Utilisation de NOT LIKE dans la propriété Filter du jeu d'enregistrements VBA

Voici le code que j'ai utilisé.

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

Mais cela ne fonctionne pas et retourne toutes les lignes. Si j'utilise Name LIKE 'Dav%', il renvoie correctement les enregistrements avec Name commençant par Dav.

Quel est le problème avec Not LIKE? Est-ce que je manque quelque chose?

De plus, j'ai besoin d'utiliser Requery pour que le filtre fonctionne. Est-ce vraiment nécessaire?

Merci à l'avance.

Répondre

1

Le mot clé NOT n'est pas autorisé dans la propriété filter.

+0

Y at-il une déclaration 'NOT' avec' AND', 'OR',' LIKE' du tout? –

1

Peut-être que vous pouvez inclure le NOT LIKE dans la valeur sQuery. Comme:

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

Bonne suggestion. – JeffO