Traitement si table vide??? [Résolu]

Signaler
Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
-
Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
-
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

Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
2
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.
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
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)
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
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)
Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
2
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
Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
2
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.
Messages postés
576
Date d'inscription
samedi 14 octobre 2006
Statut
Membre
Dernière intervention
27 janvier 2014
2
Ok Merci Jack pour tes précieux conseils. Excellente journée.

Cordialement.