Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/10/2011, 16h39   #1
Membre régulier
 
Inscription : avril 2005
Messages : 251
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 251
Points : 86
Points : 86
Par défaut Parcourir une table et ajout donnée

Bonjour le forum
J' ai une table tblaffaires,dans cette table il ya des champs vides les champs NsemD et NsemF)
Le code a pour fonction de parcourir la table et pour chaque ligne correspondant au critere champ nsed et nsemF vide de rajouter des données.
C' est une case à cocher qui lance cette routine. Je ne vois pas d' erreur car lors du lancement tout se déroule et
une fois terminé je n' ai aucune mise à jour .$Ci joint le code

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Dim oRst As DAO.Recordset
Set oDb = CurrentDb
If Me.CochApproved.value  = True Then
'Set oRst = oDb.OpenRecordset("SELECT tblAffaires.*, NSemd, NSemF  From tblAffaires  WHERE  NSemd Is Null and NSemF is null")
While Not oRst.EOF
 oRst.AddNew
 oRst!Approuve = True
 oRst!ApprouveBy = Me.LoginID
 oRst!ApprouveDateTime = Me!SDate
 oRst!lblStatus = "Approuve
 
 oRst.MoveNext
Wend
MsgBox "Mise  à jour terminée"
 oRst.Close
oDb.Close
Set oRst = Nothing
Set oDb = Nothing
 
Else
Me.CochApproved.value  = False
End If
Merci d' avance pour toute aide qui me permettra de corriger mon code
Aladin
Aladin_23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2011, 17h14   #2
Membre confirmé
 
Homme
Chercheur
Inscription : juin 2011
Messages : 150
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Tarn (Midi Pyrénées)

Informations professionnelles :
Activité : Chercheur
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : juin 2011
Messages : 150
Points : 231
Points : 231
Bonjour,

Voici quelques modifs que je vous laisse découvrir pour que cela fonctionne :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
Dim oRst As DAO.Recordset
Set oDb = CurrentDb
 
If Me.CochApproved.Value = True Then
 Set oRst = oDb.OpenRecordset("SELECT tblAffaires.*, NSemd, NSemF  From tblAffaires  WHERE  NSemd Is Null and NSemF is null")
 
 
While Not oRst.EOF
 oRst.Edit
 oRst!Approuve = True
 oRst!ApprouveBy = Me.LoginID
 oRst!ApprouveDateTime = Me!SDate
 oRst!lblStatus = "Approuve"
 oRst.Update
 oRst.MoveNext
Wend
 
MsgBox "Mise  à jour terminée"
 
oRst.Close
oDb.Close
Set oRst = Nothing
Set oDb = Nothing
 
Else
Me.CochApproved.Value = False
End If
Bcdt
fbtsra est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2011, 20h50   #3
Membre régulier
 
Inscription : avril 2005
Messages : 251
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 251
Points : 86
Points : 86
Bonsoir fbtsra et le forum
Merci fbtsra, j' ai testé la modif du code et le test est ok - J' ai vu mon erreur le addnew ne correspondait pas et j' avais oublie le update. je regarderai une doc afin de differencié" le addnew et le edit,
Aladin
Aladin_23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h36.


 
 
 
 
Partenaires

Hébergement Web