Bonjour à tous !
Mon problème est le suivant:
J'ai une première requête qui me renvoi plusieurs lignes,dont un numéro de produit .
Pour chacune de ces lignes, je dois insérer dans une table une partie de ma requête si cette table ne contient pas déja le numéro de produit et dans le cas ou elle contient déja le numéro de produit, je dois mettre à jour cette ligne.
Je ne sais pas comment faire pour tester l'éxistence de ce numéro de produit . Pour le moment, j'utilise un premier recordset rst, qui éxécute ma requête, et j'en utilise un second avec lequel je voulais tester la présence du numéro de produit dans ma table (si le select ne renvoi rien, le produit n'y est pas, sinon il y est.)
Mais lorsque le produit n'éxiste pas dans la table, j'obtiens un message d'erreur comme quoi il n'y a aucun enregistrement correspondant... et je ne sais pas comment faire pour écrire du code dans ce cas la.
Je voudrais utiliser un " IF " mais je ne vois pas comment faire... je ne connais pas bien le fonctionnement des recordset.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 rst.Open "SELECT PUB_SOFA.ofdatdp as ofdatdp1, PUB_SOFC.proref as proref1, ...;", cn, adOpenForwardOnly, adLockReadOnly rst.MoveFirst While Not rst.EOF Dim rst2 As New ADODB.Recordset, fld2 As ADODB.Field '-------------> Comment tester ? rst2.Open "SELECT numproduit from tabletemp where numproduit = " & rst!proref1, cn, adOpenForwardOnly, adLockReadOnly '-------------> rst2.close rst.MoveNext Wend
Si vous pouvez m'aider...
Merci d'avance
Partager