Traitement si table vide???

Résolu
js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 - 23 juil. 2009 à 19:27
js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 - 24 juil. 2009 à 12:52
Bonsoir à tous,

j'aimerai faire un traitement au cas où ma table serait vide alors faire traitement1 sinon faire traitement2 mais je ne sais pas pourquoi ça ne marche pas. Une âme sensible pourrait-elle m'aider s'il vous plaît? Voici mon code :

Dim rs As New Recordset
rs.Open "select * from Tablevendre", cn

If rs.RecordCount < 1 Then
traitement1
Else
traitement2
End if


Merci d'avance.

Cordialement

6 réponses

js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 2
24 juil. 2009 à 00:25
J'ai trouvé en fait lorsque j'avais déclaré mon recordset, à la fin j'ai mis cn au lieu de cn, 1, 2. La bonne syntaxe est donc :

Dim rs As New Recordset
rs.Open "select * from Tablevendre", cn, 1, 2

If rs.RecordCount < 1 Then
traitement1
Else
traitement2
End if

Je crois qu'il faut que je me penche sérieusement sur ces histoires de verrouillage. Sinon je trouve ça vraiment bizarre quand même. En tous cas MERCI Jack pour ton altruisme.

Cordialement.
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 juil. 2009 à 01:05
Re
Voir l'aide de la commande Open.
Les apramètres à mettre, après l'objet de connexion, sont représentés par des constantes système.
Je te conseille fortement de les utiliser, par souci de clarté.
Exemple :
rs.Open RequeteSQL, CN, adOpenStatic, adLockOptimistic
Il est quand même plus facile de comprendre les constantes nommées, que des chiffres, non ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
23 juil. 2009 à 20:19
Salut
Le code semble correct
"ça marche pas" ne veut rien dire
Erreur ? laquelle
En debug, que vaut RecordCount quand tu arrives sur ce test ?
(touches F9, F8 pour debuguer)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 2
23 juil. 2009 à 22:03
Bonsoir Jack et Merci pour ton intervention (décidément, on dirait que tu m'appartient aujourd'hui, ). Le code ne renvoi pas d'erreur j'ai testé avec un msgbox pour contrôler. En fait pour lui tout est normal pourtant j'ai des données dans la table. Le Recordcount me retourne -1. Je n'y comprends vraiment rien. Merci d'avance.

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 2
23 juil. 2009 à 22:07
If rs1.RecordCount < 1 Then

MsgBox ("Le panier est vide")

Exit Sub

Else

Traitement2

End If

Il m'affiche chaque fois "Le panier est vide" et le RecordCount est égale à -1.

Merci d'avance.

Cordialement.
0
js8bleu Messages postés 576 Date d'inscription samedi 14 octobre 2006 Statut Membre Dernière intervention 27 janvier 2014 2
24 juil. 2009 à 12:52
Ok Merci Jack pour tes précieux conseils. Excellente journée.

Cordialement.
0
Rejoignez-nous