Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
> Bonjour,
> Lorsque je crée un enregistrement dans la table Formation-Activit é-
> Liste je voudrais rajouter
> lId (réfFormationActivitéListe ) ainsi créé dans la table Fo rmation.
> -Les deux tables sont vides le 1er enregistrement se crée bien dans
> les deux tables.
> -Le 2ème enregistrement aussi.
> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
> jobtiens une boucle sans fin.
> -Si je reviens sur le 2ème enregistrement le code passe en bien par
> Edit.
> Où se trouve mon erreur ?
> Je joins le code, et merci pour votre aide.
> Salutations
> Private Sub Commande11_Click()
> On Error GoTo GestionErreur
> Set db = CurrentDb()
> '--- Intérogation de rsFormaListe
> Set rsFormaListe = db.OpenRecordset("tbl Formations-Activi tés-
> Liste", dbOpenDynaset)
> '--- Intérogation de rsFormation
> Set rsFormation = db.OpenRecordset("tbl Formations",
> dbOpenDynaset)
> '--- Test sur base vide
> If rsFormaListe.RecordCount = 0 Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> rsFormation.Update
> rsFormaListe.Update
> End If
> '--- Boucle sur la table rsFormaliste
> Do While Not rsFormaListe.EOF
> '--- Recherche si l'enregistrement est trouvé
> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
> (Me.txtRéfActivitéListe) & " And " & _
> "[RéfActiv itéOption]=" & Val
> (Me.cmbOption) & " And " & _
> "[RéfForm ationListe]=" & Val
> (Me.cmbFormation)
> '--- Test sur NoMatch
> If rsFormaListe.NoMatch Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormaListe.Edit
> End If
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormaListe.Update
> '--- Maj et Ajout dans la tbl rsFormation
> '--- Recherche si l'enregistrement est trouvé
> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
> rsFormaListe![RéfFormationActivitéListe]
> '--- Non trouvé NoMatch vaut False on ajoute
> If rsFormation.NoMatch Then
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormation.Edit
> End If
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimate ur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation.Update
> rsFormaListe.MoveNext
> Loop
> '--- Màj du sous formulaire
> Forms![frm Màj Formations]![frm Màj Formations-sfm].Requ ery
> '--- Ferme les objet
> rsFormaListe.Close: Set rsFormaListe = Nothing
> rsFormation.Close: Set rsFormation = Nothing
> db.Close: Set db = Nothing
> GestionErreur:
> End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
> Bonjour,
> Lorsque je crée un enregistrement dans la table Formation-Activit é-
> Liste je voudrais rajouter
> lId (réfFormationActivitéListe ) ainsi créé dans la table Fo rmation.
> -Les deux tables sont vides le 1er enregistrement se crée bien dans
> les deux tables.
> -Le 2ème enregistrement aussi.
> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
> jobtiens une boucle sans fin.
> -Si je reviens sur le 2ème enregistrement le code passe en bien par
> Edit.
> Où se trouve mon erreur ?
> Je joins le code, et merci pour votre aide.
> Salutations
> Private Sub Commande11_Click()
> On Error GoTo GestionErreur
> Set db = CurrentDb()
> '--- Intérogation de rsFormaListe
> Set rsFormaListe = db.OpenRecordset("tbl Formations-Activi tés-
> Liste", dbOpenDynaset)
> '--- Intérogation de rsFormation
> Set rsFormation = db.OpenRecordset("tbl Formations",
> dbOpenDynaset)
> '--- Test sur base vide
> If rsFormaListe.RecordCount = 0 Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> rsFormation.Update
> rsFormaListe.Update
> End If
> '--- Boucle sur la table rsFormaliste
> Do While Not rsFormaListe.EOF
> '--- Recherche si l'enregistrement est trouvé
> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
> (Me.txtRéfActivitéListe) & " And " & _
> "[RéfActiv itéOption]=" & Val
> (Me.cmbOption) & " And " & _
> "[RéfForm ationListe]=" & Val
> (Me.cmbFormation)
> '--- Test sur NoMatch
> If rsFormaListe.NoMatch Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormaListe.Edit
> End If
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormaListe.Update
> '--- Maj et Ajout dans la tbl rsFormation
> '--- Recherche si l'enregistrement est trouvé
> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
> rsFormaListe![RéfFormationActivitéListe]
> '--- Non trouvé NoMatch vaut False on ajoute
> If rsFormation.NoMatch Then
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormation.Edit
> End If
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimate ur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation.Update
> rsFormaListe.MoveNext
> Loop
> '--- Màj du sous formulaire
> Forms![frm Màj Formations]![frm Màj Formations-sfm].Requ ery
> '--- Ferme les objet
> rsFormaListe.Close: Set rsFormaListe = Nothing
> rsFormation.Close: Set rsFormation = Nothing
> db.Close: Set db = Nothing
> GestionErreur:
> End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
> Bonjour,
> Lorsque je crée un enregistrement dans la table Formation-Activit é-
> Liste je voudrais rajouter
> lId (réfFormationActivitéListe ) ainsi créé dans la table Fo rmation.
> -Les deux tables sont vides le 1er enregistrement se crée bien dans
> les deux tables.
> -Le 2ème enregistrement aussi.
> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
> jobtiens une boucle sans fin.
> -Si je reviens sur le 2ème enregistrement le code passe en bien par
> Edit.
> Où se trouve mon erreur ?
> Je joins le code, et merci pour votre aide.
> Salutations
> Private Sub Commande11_Click()
> On Error GoTo GestionErreur
> Set db = CurrentDb()
> '--- Intérogation de rsFormaListe
> Set rsFormaListe = db.OpenRecordset("tbl Formations-Activi tés-
> Liste", dbOpenDynaset)
> '--- Intérogation de rsFormation
> Set rsFormation = db.OpenRecordset("tbl Formations",
> dbOpenDynaset)
> '--- Test sur base vide
> If rsFormaListe.RecordCount = 0 Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> rsFormation.Update
> rsFormaListe.Update
> End If
> '--- Boucle sur la table rsFormaliste
> Do While Not rsFormaListe.EOF
> '--- Recherche si l'enregistrement est trouvé
> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
> (Me.txtRéfActivitéListe) & " And " & _
> "[RéfActiv itéOption]=" & Val
> (Me.cmbOption) & " And " & _
> "[RéfForm ationListe]=" & Val
> (Me.cmbFormation)
> '--- Test sur NoMatch
> If rsFormaListe.NoMatch Then
> rsFormaListe.AddNew
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormaListe.Edit
> End If
> rsFormaListe("réfActivitéListe") = Me.txtRé fActivitéListe
> rsFormaListe("réfActivitéOption") = Val(Me.cm bOption)
> rsFormaListe("réfFormationListe") = Val(Me.cmbF ormation)
> lngCodeRéf = rsFormaListe("RéfFormationActivi téListe")
> rsFormaListe.Update
> '--- Maj et Ajout dans la tbl rsFormation
> '--- Recherche si l'enregistrement est trouvé
> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
> rsFormaListe![RéfFormationActivitéListe]
> '--- Non trouvé NoMatch vaut False on ajoute
> If rsFormation.NoMatch Then
> rsFormation.AddNew
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimat eur.Value, 0)
> rsFormation("réfFormationActivitéListe") = ln gCodeRéf
> Else
> '--- Trouvé NoMatch vaut True on met à jours
> rsFormation.Edit
> End If
> rsFormation("réfAnimateur") = Nz(TxtRéfAnimate ur.Value, 0)
> rsFormation("DatesDu") = Nz(txtDateDu.Value)
> rsFormation("DatesAu") = Nz(txtDateAu.Value)
> rsFormation.Update
> rsFormaListe.MoveNext
> Loop
> '--- Màj du sous formulaire
> Forms![frm Màj Formations]![frm Màj Formations-sfm].Requ ery
> '--- Ferme les objet
> rsFormaListe.Close: Set rsFormaListe = Nothing
> rsFormation.Close: Set rsFormation = Nothing
> db.Close: Set db = Nothing
> GestionErreur:
> End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Re,
Jacques a écrit :
> On 19 déc, 12:20, Michel__D
> wrote:
>> Bonjour,
>> Quelle est le sens de la relation entre les deux tables ?
>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inver se.
>> Jacques a écrit :
>>> Bonjour,
>>> Lorsque je crée un enregistrement dans la table Formation-Activi té-
>>> Liste je voudrais rajouter
>>> lId (réfFormationActivitéListe ) ainsi créé dans la table Formation.
>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>> les deux tables.
>>> -Le 2ème enregistrement aussi.
>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
>>> jobtiens une boucle sans fin.
>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>> Edit.
>>> Où se trouve mon erreur ?
>>> Je joins le code, et merci pour votre aide.
>>> Salutations
>>> Private Sub Commande11_Click()
>>> On Error GoTo GestionErreur
>>> Set db = CurrentDb()
>>> '--- Intérogation de rsFormaListe
>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-Acti vités-
>>> Liste", dbOpenDynaset)
>>> '--- Intérogation de rsFormation
>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>> dbOpenDynaset)
>>> '--- Test sur base vide
>>> If rsFormaListe.RecordCount = 0 Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> rsFormation.Update
>>> rsFormaListe.Update
>>> End If
>>> '--- Boucle sur la table rsFormaliste
>>> Do While Not rsFormaListe.EOF
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>> (Me.txtRéfActivitéListe) & " And " & _
>>> "[RéfAct ivitéOption]=" & Val
>>> (Me.cmbOption) & " And " & _
>>> "[RéfFo rmationListe]=" & Val
>>> (Me.cmbFormation)
>>> '--- Test sur NoMatch
>>> If rsFormaListe.NoMatch Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormaListe.Edit
>>> End If
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormaListe.Update
>>> '--- Maj et Ajout dans la tbl rsFormation
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
>>> rsFormaListe![RéfFormationActivitéListe]
>>> '--- Non trouvé NoMatch vaut False on ajoute
>>> If rsFormation.NoMatch Then
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormation.Edit
>>> End If
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnima teur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation.Update
>>> rsFormaListe.MoveNext
>>> Loop
>>> '--- Màj du sous formulaire
>>> Forms![frm Màj Formations]![frm Màj Formations-sfm].Re query
>>> '--- Ferme les objet
>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>> rsFormation.Close: Set rsFormation = Nothing
>>> db.Close: Set db = Nothing
>>> GestionErreur:
>>> End Sub- Masquer le texte des messages précédents -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Voici la relation des tables :
> Tbl Formations
> RéfRelation
> RéfAnimateur
> RéfFormationActivitéListe-8-----------1-RéfFormationActivitéLis te de
> la table Formations-Activité-Liste
> Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéLis te] avant
de récupérer la référence à [txtRéfActivitéListe] que t u viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Re,
Jacques a écrit :
> On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
> wrote:
>> Bonjour,
>> Quelle est le sens de la relation entre les deux tables ?
>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inver se.
>> Jacques a écrit :
>>> Bonjour,
>>> Lorsque je crée un enregistrement dans la table Formation-Activi té-
>>> Liste je voudrais rajouter
>>> lId (réfFormationActivitéListe ) ainsi créé dans la table Formation.
>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>> les deux tables.
>>> -Le 2ème enregistrement aussi.
>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
>>> jobtiens une boucle sans fin.
>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>> Edit.
>>> Où se trouve mon erreur ?
>>> Je joins le code, et merci pour votre aide.
>>> Salutations
>>> Private Sub Commande11_Click()
>>> On Error GoTo GestionErreur
>>> Set db = CurrentDb()
>>> '--- Intérogation de rsFormaListe
>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-Acti vités-
>>> Liste", dbOpenDynaset)
>>> '--- Intérogation de rsFormation
>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>> dbOpenDynaset)
>>> '--- Test sur base vide
>>> If rsFormaListe.RecordCount = 0 Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> rsFormation.Update
>>> rsFormaListe.Update
>>> End If
>>> '--- Boucle sur la table rsFormaliste
>>> Do While Not rsFormaListe.EOF
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>> (Me.txtRéfActivitéListe) & " And " & _
>>> "[RéfAct ivitéOption]=" & Val
>>> (Me.cmbOption) & " And " & _
>>> "[RéfFo rmationListe]=" & Val
>>> (Me.cmbFormation)
>>> '--- Test sur NoMatch
>>> If rsFormaListe.NoMatch Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormaListe.Edit
>>> End If
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormaListe.Update
>>> '--- Maj et Ajout dans la tbl rsFormation
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
>>> rsFormaListe![RéfFormationActivitéListe]
>>> '--- Non trouvé NoMatch vaut False on ajoute
>>> If rsFormation.NoMatch Then
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormation.Edit
>>> End If
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnima teur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation.Update
>>> rsFormaListe.MoveNext
>>> Loop
>>> '--- Màj du sous formulaire
>>> Forms![frm Màj Formations]![frm Màj Formations-sfm].Re query
>>> '--- Ferme les objet
>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>> rsFormation.Close: Set rsFormation = Nothing
>>> db.Close: Set db = Nothing
>>> GestionErreur:
>>> End Sub- Masquer le texte des messages précédents -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Voici la relation des tables :
> Tbl Formations
> RéfRelation
> RéfAnimateur
> RéfFormationActivitéListe-8-----------1-RéfFormationActivitéLis te de
> la table Formations-Activité-Liste
> Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéLis te] avant
de récupérer la référence à [txtRéfActivitéListe] que t u viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Re,
Jacques a écrit :
> On 19 déc, 12:20, Michel__D
> wrote:
>> Bonjour,
>> Quelle est le sens de la relation entre les deux tables ?
>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inver se.
>> Jacques a écrit :
>>> Bonjour,
>>> Lorsque je crée un enregistrement dans la table Formation-Activi té-
>>> Liste je voudrais rajouter
>>> lId (réfFormationActivitéListe ) ainsi créé dans la table Formation.
>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>> les deux tables.
>>> -Le 2ème enregistrement aussi.
>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
>>> jobtiens une boucle sans fin.
>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>> Edit.
>>> Où se trouve mon erreur ?
>>> Je joins le code, et merci pour votre aide.
>>> Salutations
>>> Private Sub Commande11_Click()
>>> On Error GoTo GestionErreur
>>> Set db = CurrentDb()
>>> '--- Intérogation de rsFormaListe
>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-Acti vités-
>>> Liste", dbOpenDynaset)
>>> '--- Intérogation de rsFormation
>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>> dbOpenDynaset)
>>> '--- Test sur base vide
>>> If rsFormaListe.RecordCount = 0 Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> rsFormation.Update
>>> rsFormaListe.Update
>>> End If
>>> '--- Boucle sur la table rsFormaliste
>>> Do While Not rsFormaListe.EOF
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>> (Me.txtRéfActivitéListe) & " And " & _
>>> "[RéfAct ivitéOption]=" & Val
>>> (Me.cmbOption) & " And " & _
>>> "[RéfFo rmationListe]=" & Val
>>> (Me.cmbFormation)
>>> '--- Test sur NoMatch
>>> If rsFormaListe.NoMatch Then
>>> rsFormaListe.AddNew
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormaListe.Edit
>>> End If
>>> rsFormaListe("réfActivitéListe") = Me.txtR éfActivitéListe
>>> rsFormaListe("réfActivitéOption") = Val(Me. cmbOption)
>>> rsFormaListe("réfFormationListe") = Val(Me.cm bFormation)
>>> lngCodeRéf = rsFormaListe("RéfFormationActi vitéListe")
>>> rsFormaListe.Update
>>> '--- Maj et Ajout dans la tbl rsFormation
>>> '--- Recherche si l'enregistrement est trouvé
>>> rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
>>> rsFormaListe![RéfFormationActivitéListe]
>>> '--- Non trouvé NoMatch vaut False on ajoute
>>> If rsFormation.NoMatch Then
>>> rsFormation.AddNew
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnim ateur.Value, 0)
>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>> Else
>>> '--- Trouvé NoMatch vaut True on met à jours
>>> rsFormation.Edit
>>> End If
>>> rsFormation("réfAnimateur") = Nz(TxtRéfAnima teur.Value, 0)
>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>> rsFormation.Update
>>> rsFormaListe.MoveNext
>>> Loop
>>> '--- Màj du sous formulaire
>>> Forms![frm Màj Formations]![frm Màj Formations-sfm].Re query
>>> '--- Ferme les objet
>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>> rsFormation.Close: Set rsFormation = Nothing
>>> db.Close: Set db = Nothing
>>> GestionErreur:
>>> End Sub- Masquer le texte des messages précédents -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Voici la relation des tables :
> Tbl Formations
> RéfRelation
> RéfAnimateur
> RéfFormationActivitéListe-8-----------1-RéfFormationActivitéLis te de
> la table Formations-Activité-Liste
> Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéLis te] avant
de récupérer la référence à [txtRéfActivitéListe] que t u viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
On 19 déc, 14:26, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Re,
Jacques a écrit :
On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table [RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
Bonjour,
Jacques a écrit :On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Bonjour,
Jacques a écrit :
On 19 déc, 14:26, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Re,
Jacques a écrit :
On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Bonjour,
Jacques a écrit :On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me.cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm].Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Re,
Michel__D a écrit :
> Bonjour,
> Jacques a écrit :
>> On 19 déc, 14:26, Michel__D
>> wrote:
>>> Re,
>>> Jacques a écrit :
>>>> On 19 déc, 12:20, Michel__D
>>>> wrote:
>>>>> Bonjour,
>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre in verse.
>>>>> Jacques a écrit :
>>>>>> Bonjour,
>>>>>> Lorsque je crée un enregistrement dans la table Formation-Act ivité-
>>>>>> Liste je voudrais rajouter
>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la tab le Formation.
>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien d ans
>>>>>> les deux tables.
>>>>>> -Le 2ème enregistrement aussi.
>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs )
>>>>>> jobtiens une boucle sans fin.
>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>>>>> Edit.
>>>>>> Où se trouve mon erreur ?
>>>>>> Je joins le code, et merci pour votre aide.
>>>>>> Salutations
>>>>>> Private Sub Commande11_Click()
>>>>>> On Error GoTo GestionErreur
>>>>>> Set db = CurrentDb()
>>>>>> '--- Intérogation de rsFormaListe
>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-A ctivités-
>>>>>> Liste", dbOpenDynaset)
>>>>>> '--- Intérogation de rsFormation
>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>>>>> dbOpenDynaset)
>>>>>> '--- Test sur base vide
>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.Update
>>>>>> End If
>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>> Do While Not rsFormaListe.EOF
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Va l
>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>> "[Réf ActivitéOption]=" & Val
>>>>>> (Me.cmbOption) & " And " & _
>>>>>> "[Ré fFormationListe]=" & Val
>>>>>> (Me.cmbFormation)
>>>>>> '--- Test sur NoMatch
>>>>>> If rsFormaListe.NoMatch Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormaListe.Edit
>>>>>> End If
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormaListe.Update
>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe] =" &
>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>> If rsFormation.NoMatch Then
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormation.Edit
>>>>>> End If
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfAn imateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.MoveNext
>>>>>> Loop
>>>>>> '--- Màj du sous formulaire
>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sfm] .Requery
>>>>>> '--- Ferme les objet
>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>> db.Close: Set db = Nothing
>>>>>> GestionErreur:
>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Bonjour Michel_D
>>>> Voici la relation des tables :
>>>> Tbl Formations
>>>> RéfRelation
>>>> RéfAnimateur
>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivité Liste de
>>>> la table Formations-Activité-Liste
>>>> Salutations
>>> Je pense qu'il faut mettre à jour ta table
>>> [RéfFormationActivitéListe] avant
>>> de récupérer la référence à [txtRéfActivitéListe] q ue tu viens
>>> d'ajouter.
>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>> texte des messages précédents -
>>> - Afficher le texte des messages précédents -
>> Salutations
>> Bonjour Michel_D
>> Jai supprimé le test sur les tables vides, mais je ne peux pas cr éer
>> le 1er enregistrement.
>> De même je nai pas pu régler le problème de la boucle.
>> Ci-joint une base allégée.
>>http://cjoint.com/?mukVkLO1mb
>> Salutations
> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
> quelques
> explications par rapport à ton schéma de relations, j'ai entour é dans
> l'image
> (voir le lien) ce que je ne comprends pas et qui je pense est le noe ud
> du problème.
> D'aprés ce que j'ai compris tu veux assurer un suivi de formation dir igé
> par des animateurs qui possèdent des activités personnelles.
> Ce que je ne comprends pas :
> Quelles sont les relations entre les formations et les activitées ?
> (A cause de [RéfFormationActivitéListe] dans la table [tbl Forma tions])
>http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tenta tive.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précéden ts -
- Afficher le texte des messages précédents -
Re,
Michel__D a écrit :
> Bonjour,
> Jacques a écrit :
>> On 19 déc, 14:26, Michel__D <Michel.NOS...@orange-ft.com.invalid>
>> wrote:
>>> Re,
>>> Jacques a écrit :
>>>> On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
>>>> wrote:
>>>>> Bonjour,
>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre in verse.
>>>>> Jacques a écrit :
>>>>>> Bonjour,
>>>>>> Lorsque je crée un enregistrement dans la table Formation-Act ivité-
>>>>>> Liste je voudrais rajouter
>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la tab le Formation.
>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien d ans
>>>>>> les deux tables.
>>>>>> -Le 2ème enregistrement aussi.
>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs )
>>>>>> jobtiens une boucle sans fin.
>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>>>>> Edit.
>>>>>> Où se trouve mon erreur ?
>>>>>> Je joins le code, et merci pour votre aide.
>>>>>> Salutations
>>>>>> Private Sub Commande11_Click()
>>>>>> On Error GoTo GestionErreur
>>>>>> Set db = CurrentDb()
>>>>>> '--- Intérogation de rsFormaListe
>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-A ctivités-
>>>>>> Liste", dbOpenDynaset)
>>>>>> '--- Intérogation de rsFormation
>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>>>>> dbOpenDynaset)
>>>>>> '--- Test sur base vide
>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.Update
>>>>>> End If
>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>> Do While Not rsFormaListe.EOF
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Va l
>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>> "[Réf ActivitéOption]=" & Val
>>>>>> (Me.cmbOption) & " And " & _
>>>>>> "[Ré fFormationListe]=" & Val
>>>>>> (Me.cmbFormation)
>>>>>> '--- Test sur NoMatch
>>>>>> If rsFormaListe.NoMatch Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormaListe.Edit
>>>>>> End If
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormaListe.Update
>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe] =" &
>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>> If rsFormation.NoMatch Then
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormation.Edit
>>>>>> End If
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfAn imateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.MoveNext
>>>>>> Loop
>>>>>> '--- Màj du sous formulaire
>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sfm] .Requery
>>>>>> '--- Ferme les objet
>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>> db.Close: Set db = Nothing
>>>>>> GestionErreur:
>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Bonjour Michel_D
>>>> Voici la relation des tables :
>>>> Tbl Formations
>>>> RéfRelation
>>>> RéfAnimateur
>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivité Liste de
>>>> la table Formations-Activité-Liste
>>>> Salutations
>>> Je pense qu'il faut mettre à jour ta table
>>> [RéfFormationActivitéListe] avant
>>> de récupérer la référence à [txtRéfActivitéListe] q ue tu viens
>>> d'ajouter.
>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>> texte des messages précédents -
>>> - Afficher le texte des messages précédents -
>> Salutations
>> Bonjour Michel_D
>> Jai supprimé le test sur les tables vides, mais je ne peux pas cr éer
>> le 1er enregistrement.
>> De même je nai pas pu régler le problème de la boucle.
>> Ci-joint une base allégée.
>>http://cjoint.com/?mukVkLO1mb
>> Salutations
> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
> quelques
> explications par rapport à ton schéma de relations, j'ai entour é dans
> l'image
> (voir le lien) ce que je ne comprends pas et qui je pense est le noe ud
> du problème.
> D'aprés ce que j'ai compris tu veux assurer un suivi de formation dir igé
> par des animateurs qui possèdent des activités personnelles.
> Ce que je ne comprends pas :
> Quelles sont les relations entre les formations et les activitées ?
> (A cause de [RéfFormationActivitéListe] dans la table [tbl Forma tions])
>http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tenta tive.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précéden ts -
- Afficher le texte des messages précédents -
Re,
Michel__D a écrit :
> Bonjour,
> Jacques a écrit :
>> On 19 déc, 14:26, Michel__D
>> wrote:
>>> Re,
>>> Jacques a écrit :
>>>> On 19 déc, 12:20, Michel__D
>>>> wrote:
>>>>> Bonjour,
>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre in verse.
>>>>> Jacques a écrit :
>>>>>> Bonjour,
>>>>>> Lorsque je crée un enregistrement dans la table Formation-Act ivité-
>>>>>> Liste je voudrais rajouter
>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la tab le Formation.
>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien d ans
>>>>>> les deux tables.
>>>>>> -Le 2ème enregistrement aussi.
>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeurs )
>>>>>> jobtiens une boucle sans fin.
>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bien par
>>>>>> Edit.
>>>>>> Où se trouve mon erreur ?
>>>>>> Je joins le code, et merci pour votre aide.
>>>>>> Salutations
>>>>>> Private Sub Commande11_Click()
>>>>>> On Error GoTo GestionErreur
>>>>>> Set db = CurrentDb()
>>>>>> '--- Intérogation de rsFormaListe
>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations-A ctivités-
>>>>>> Liste", dbOpenDynaset)
>>>>>> '--- Intérogation de rsFormation
>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations",
>>>>>> dbOpenDynaset)
>>>>>> '--- Test sur base vide
>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.Update
>>>>>> End If
>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>> Do While Not rsFormaListe.EOF
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Va l
>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>> "[Réf ActivitéOption]=" & Val
>>>>>> (Me.cmbOption) & " And " & _
>>>>>> "[Ré fFormationListe]=" & Val
>>>>>> (Me.cmbFormation)
>>>>>> '--- Test sur NoMatch
>>>>>> If rsFormaListe.NoMatch Then
>>>>>> rsFormaListe.AddNew
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormaListe.Edit
>>>>>> End If
>>>>>> rsFormaListe("réfActivitéListe") = Me.tx tRéfActivitéListe
>>>>>> rsFormaListe("réfActivitéOption") = Val( Me.cmbOption)
>>>>>> rsFormaListe("réfFormationListe") = Val(Me .cmbFormation)
>>>>>> lngCodeRéf = rsFormaListe("RéfFormationA ctivitéListe")
>>>>>> rsFormaListe.Update
>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe] =" &
>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>> If rsFormation.NoMatch Then
>>>>>> rsFormation.AddNew
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfA nimateur.Value, 0)
>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>> Else
>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>> rsFormation.Edit
>>>>>> End If
>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéfAn imateur.Value, 0)
>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value)
>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value)
>>>>>> rsFormation.Update
>>>>>> rsFormaListe.MoveNext
>>>>>> Loop
>>>>>> '--- Màj du sous formulaire
>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sfm] .Requery
>>>>>> '--- Ferme les objet
>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>> db.Close: Set db = Nothing
>>>>>> GestionErreur:
>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Bonjour Michel_D
>>>> Voici la relation des tables :
>>>> Tbl Formations
>>>> RéfRelation
>>>> RéfAnimateur
>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivité Liste de
>>>> la table Formations-Activité-Liste
>>>> Salutations
>>> Je pense qu'il faut mettre à jour ta table
>>> [RéfFormationActivitéListe] avant
>>> de récupérer la référence à [txtRéfActivitéListe] q ue tu viens
>>> d'ajouter.
>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>> texte des messages précédents -
>>> - Afficher le texte des messages précédents -
>> Salutations
>> Bonjour Michel_D
>> Jai supprimé le test sur les tables vides, mais je ne peux pas cr éer
>> le 1er enregistrement.
>> De même je nai pas pu régler le problème de la boucle.
>> Ci-joint une base allégée.
>>http://cjoint.com/?mukVkLO1mb
>> Salutations
> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
> quelques
> explications par rapport à ton schéma de relations, j'ai entour é dans
> l'image
> (voir le lien) ce que je ne comprends pas et qui je pense est le noe ud
> du problème.
> D'aprés ce que j'ai compris tu veux assurer un suivi de formation dir igé
> par des animateurs qui possèdent des activités personnelles.
> Ce que je ne comprends pas :
> Quelles sont les relations entre les formations et les activitées ?
> (A cause de [RéfFormationActivitéListe] dans la table [tbl Forma tions])
>http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tenta tive.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précéden ts -
- Afficher le texte des messages précédents -
On 20 déc, 18:53, Michel__D
wrote:Re,
Michel__D a écrit :Bonjour,
Jacques a écrit :On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm]..Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tentative.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
cheminement de la création des enregistrements :
Règle :
- Un animateur peut avoir plusieurs activités (disciplines) donc
plusieurs formations.
- Une formation (tbl Formations-Liste) se compose d’un PSC1 et des
UCC1, UCC2, UCC3, UF1, puis par d’autres formations, exemple UUC4,
UUC5 etc……..
- Chaque UCC a une option (Tbl Formations-Option)
- Donc lorsque je crée un animateur (tbl animateur) j’affecte sa
discipline avec RéfActivitéListe (tbl Activité-liste)
- Puis je passe à sa formations je cherche dans la tbl Formations-
Activités-Liste
le trio RéfActivitéListe, RéfActivitéOption, RéfFormationListe s’il
existe je copie l’id
(RéfFormatiobActivitéListe) dans la table formation, autrement je crée
ce trio dans la
Table Formations-Activités-Liste et je copie l’id dans la table
Formations.
J’espère que ces explications t’aideront.
Salutations
On 20 déc, 18:53, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Re,
Michel__D a écrit :
Bonjour,
Jacques a écrit :
On 19 déc, 14:26, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Re,
Jacques a écrit :
On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid>
wrote:
Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :
Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm]..Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tentative.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
cheminement de la création des enregistrements :
Règle :
- Un animateur peut avoir plusieurs activités (disciplines) donc
plusieurs formations.
- Une formation (tbl Formations-Liste) se compose d’un PSC1 et des
UCC1, UCC2, UCC3, UF1, puis par d’autres formations, exemple UUC4,
UUC5 etc……..
- Chaque UCC a une option (Tbl Formations-Option)
- Donc lorsque je crée un animateur (tbl animateur) j’affecte sa
discipline avec RéfActivitéListe (tbl Activité-liste)
- Puis je passe à sa formations je cherche dans la tbl Formations-
Activités-Liste
le trio RéfActivitéListe, RéfActivitéOption, RéfFormationListe s’il
existe je copie l’id
(RéfFormatiobActivitéListe) dans la table formation, autrement je crée
ce trio dans la
Table Formations-Activités-Liste et je copie l’id dans la table
Formations.
J’espère que ces explications t’aideront.
Salutations
On 20 déc, 18:53, Michel__D
wrote:Re,
Michel__D a écrit :Bonjour,
Jacques a écrit :On 19 déc, 14:26, Michel__D
wrote:Re,
Jacques a écrit :On 19 déc, 12:20, Michel__D
wrote:Bonjour,
Quelle est le sens de la relation entre les deux tables ?
PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
Jacques a écrit :Bonjour,
Lorsque je crée un enregistrement dans la table Formation-Activité-
Liste je voudrais rajouter
l’Id (réfFormationActivitéListe ) ainsi créé dans la table Formation.
-Les deux tables sont vides le 1er enregistrement se crée bien dans
les deux tables.
-Le 2ème enregistrement aussi.
-Si je reviens sur le 1er enregistrement (avec les mêmes valeurs)
j’obtiens une boucle sans fin.
-Si je reviens sur le 2ème enregistrement le code passe en bien par
Edit.
Où se trouve mon erreur ?
Je joins le code, et merci pour votre aide.
Salutations
Private Sub Commande11_Click()
On Error GoTo GestionErreur
Set db = CurrentDb()
'--- Intérogation de rsFormaListe
Set rsFormaListe = db.OpenRecordset("tbl Formations-Activités-
Liste", dbOpenDynaset)
'--- Intérogation de rsFormation
Set rsFormation = db.OpenRecordset("tbl Formations",
dbOpenDynaset)
'--- Test sur base vide
If rsFormaListe.RecordCount = 0 Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
rsFormation.Update
rsFormaListe.Update
End If
'--- Boucle sur la table rsFormaliste
Do While Not rsFormaListe.EOF
'--- Recherche si l'enregistrement est trouvé
rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
(Me.txtRéfActivitéListe) & " And " & _
"[RéfActivitéOption]=" & Val
(Me.cmbOption) & " And " & _
"[RéfFormationListe]=" & Val
(Me.cmbFormation)
'--- Test sur NoMatch
If rsFormaListe.NoMatch Then
rsFormaListe.AddNew
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormaListe.Edit
End If
rsFormaListe("réfActivitéListe") = Me.txtRéfActivitéListe
rsFormaListe("réfActivitéOption") = Val(Me.cmbOption)
rsFormaListe("réfFormationListe") = Val(Me..cmbFormation)
lngCodeRéf = rsFormaListe("RéfFormationActivitéListe")
rsFormaListe.Update
'--- Maj et Ajout dans la tbl rsFormation
'--- Recherche si l'enregistrement est trouvé
rsFormation.FindFirst "[RéfFormationActivitéListe]=" &
rsFormaListe![RéfFormationActivitéListe]
'--- Non trouvé NoMatch vaut False on ajoute
If rsFormation.NoMatch Then
rsFormation.AddNew
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("réfFormationActivitéListe") = lngCodeRéf
Else
'--- Trouvé NoMatch vaut True on met à jours
rsFormation.Edit
End If
rsFormation("réfAnimateur") = Nz(TxtRéfAnimateur.Value, 0)
rsFormation("DatesDu") = Nz(txtDateDu.Value)
rsFormation("DatesAu") = Nz(txtDateAu.Value)
rsFormation.Update
rsFormaListe.MoveNext
Loop
'--- Màj du sous formulaire
Forms![frm Màj Formations]![frm Màj Formations-sfm]..Requery
'--- Ferme les objet
rsFormaListe.Close: Set rsFormaListe = Nothing
rsFormation.Close: Set rsFormation = Nothing
db.Close: Set db = Nothing
GestionErreur:
End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Voici la relation des tables :
Tbl Formations
RéfRelation
RéfAnimateur
RéfFormationActivitéListe-8-----------1-RéfFormationActivitéListe de
la table Formations-Activité-Liste
Salutations
Je pense qu'il faut mettre à jour ta table
[RéfFormationActivitéListe] avant
de récupérer la référence à [txtRéfActivitéListe] que tu viens
d'ajouter.
PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
texte des messages précédents -
- Afficher le texte des messages précédents -
Salutations
Bonjour Michel_D
J’ai supprimé le test sur les tables vides, mais je ne peux pas créer
le 1er enregistrement.
De même je n’ai pas pu régler le problème de la boucle.
Ci-joint une base allégée.
http://cjoint.com/?mukVkLO1mb
Salutations
J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
quelques
explications par rapport à ton schéma de relations, j'ai entouré dans
l'image
(voir le lien) ce que je ne comprends pas et qui je pense est le noeud
du problème.
D'aprés ce que j'ai compris tu veux assurer un suivi de formation dirigé
par des animateurs qui possèdent des activités personnelles.
Ce que je ne comprends pas :
Quelles sont les relations entre les formations et les activitées ?
(A cause de [RéfFormationActivitéListe] dans la table [tbl Formations])
http://cjoint.com/?musRXGwakJ
Tiens il y a eu un problème lors de la création du lien, 2ème tentative.
http://cjoint.com/?mus0Ge8N3t- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
cheminement de la création des enregistrements :
Règle :
- Un animateur peut avoir plusieurs activités (disciplines) donc
plusieurs formations.
- Une formation (tbl Formations-Liste) se compose d’un PSC1 et des
UCC1, UCC2, UCC3, UF1, puis par d’autres formations, exemple UUC4,
UUC5 etc……..
- Chaque UCC a une option (Tbl Formations-Option)
- Donc lorsque je crée un animateur (tbl animateur) j’affecte sa
discipline avec RéfActivitéListe (tbl Activité-liste)
- Puis je passe à sa formations je cherche dans la tbl Formations-
Activités-Liste
le trio RéfActivitéListe, RéfActivitéOption, RéfFormationListe s’il
existe je copie l’id
(RéfFormatiobActivitéListe) dans la table formation, autrement je crée
ce trio dans la
Table Formations-Activités-Liste et je copie l’id dans la table
Formations.
J’espère que ces explications t’aideront.
Salutations
Bonjour,
Jacques a écrit :
> On 20 déc, 18:53, Michel__D
> wrote:
>> Re,
>> Michel__D a écrit :
>>> Bonjour,
>>> Jacques a écrit :
>>>> On 19 déc, 14:26, Michel__D
>>>> wrote:
>>>>> Re,
>>>>> Jacques a écrit :
>>>>>> On 19 déc, 12:20, Michel__D >
>>>>>> wrote:
>>>>>>> Bonjour,
>>>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
>>>>>>> Jacques a écrit :
>>>>>>>> Bonjour,
>>>>>>>> Lorsque je crée un enregistrement dans la table Formation-A ctivité-
>>>>>>>> Liste je voudrais rajouter
>>>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la t able Formation.
>>>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>>>>>>> les deux tables.
>>>>>>>> -Le 2ème enregistrement aussi.
>>>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeu rs)
>>>>>>>> jobtiens une boucle sans fin.
>>>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bie n par
>>>>>>>> Edit.
>>>>>>>> Où se trouve mon erreur ?
>>>>>>>> Je joins le code, et merci pour votre aide.
>>>>>>>> Salutations
>>>>>>>> Private Sub Commande11_Click()
>>>>>>>> On Error GoTo GestionErreur
>>>>>>>> Set db = CurrentDb()
>>>>>>>> '--- Intérogation de rsFormaListe
>>>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations -Activités-
>>>>>>>> Liste", dbOpenDynaset)
>>>>>>>> '--- Intérogation de rsFormation
>>>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations" ,
>>>>>>>> dbOpenDynaset)
>>>>>>>> '--- Test sur base vide
>>>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Valu e)
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Valu e)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.Update
>>>>>>>> End If
>>>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>>>> Do While Not rsFormaListe.EOF
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>>>> "[R éfActivitéOption]=" & Val
>>>>>>>> (Me.cmbOption) & " And " & _
>>>>>>>> "[R éfFormationListe]=" & Val
>>>>>>>> (Me.cmbFormation)
>>>>>>>> '--- Test sur NoMatch
>>>>>>>> If rsFormaListe.NoMatch Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormaListe.Edit
>>>>>>>> End If
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormaListe.Update
>>>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe ]=" &
>>>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>>>> If rsFormation.NoMatch Then
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormation.Edit
>>>>>>>> End If
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéf Animateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value )
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value )
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.MoveNext
>>>>>>>> Loop
>>>>>>>> '--- Màj du sous formulaire
>>>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sf m]..Requery
>>>>>>>> '--- Ferme les objet
>>>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>>>> db.Close: Set db = Nothing
>>>>>>>> GestionErreur:
>>>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Bonjour Michel_D
>>>>>> Voici la relation des tables :
>>>>>> Tbl Formations
>>>>>> RéfRelation
>>>>>> RéfAnimateur
>>>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivit éListe de
>>>>>> la table Formations-Activité-Liste
>>>>>> Salutations
>>>>> Je pense qu'il faut mettre à jour ta table
>>>>> [RéfFormationActivitéListe] avant
>>>>> de récupérer la référence à [txtRéfActivitéListe] que tu viens
>>>>> d'ajouter.
>>>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>>>> texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Salutations
>>>> Bonjour Michel_D
>>>> Jai supprimé le test sur les tables vides, mais je ne peux pas créer
>>>> le 1er enregistrement.
>>>> De même je nai pas pu régler le problème de la boucle.
>>>> Ci-joint une base allégée.
>>>>http://cjoint.com/?mukVkLO1mb
>>>> Salutations
>>> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
>>> quelques
>>> explications par rapport à ton schéma de relations, j'ai entou ré dans
>>> l'image
>>> (voir le lien) ce que je ne comprends pas et qui je pense est le n oeud
>>> du problème.
>>> D'aprés ce que j'ai compris tu veux assurer un suivi de formation d irigé
>>> par des animateurs qui possèdent des activités personnelles.
>>> Ce que je ne comprends pas :
>>> Quelles sont les relations entre les formations et les activitées ?
>>> (A cause de [RéfFormationActivitéListe] dans la table [tbl For mations])
>>>http://cjoint.com/?musRXGwakJ
>> Tiens il y a eu un problème lors de la création du lien, 2ème te ntative.
>>http://cjoint.com/?mus0Ge8N3t-Masquer le texte des messages précéde nts -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
> cheminement de la création des enregistrements :
> Règle :
> - Un animateur peut avoir plusieurs activités (disciplines) donc
> plusieurs formations.
> - Une formation (tbl Formations-Liste) se compose dun PSC1 et des
> UCC1, UCC2, UCC3, UF1, puis par dautres formations, exemple UUC4,
> UUC5 etc ..
> - Chaque UCC a une option (Tbl Formations-Option)
> - Donc lorsque je crée un animateur (tbl animateur) jaffecte sa
> discipline avec RéfActivitéListe (tbl Activité-liste)
> - Puis je passe à sa formations je cherche dans la tbl Formations-
> Activités-Liste
> le trio RéfActivitéListe, RéfActivitéOption, RéfFormationList e sil
> existe je copie lid
> (RéfFormatiobActivitéListe) dans la table formation, autrement je c rée
> ce trio dans la
> Table Formations-Activités-Liste et je copie lid dans la table
> Formations.
> Jespère que ces explications taideront.
> Salutations
Mouais apparemment mes liens ne se font pas corecteemnt.
Je redonne un lien quand même.
http://cjoint.com/?mvukGw87pR
Aprés ce que tu viens de me dire, faut-il comprendre que tu réalise l e
suivi des activités ou le
suivi des formations, en fait la finalité de ta base c'est quoi ?- Masq uer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Jacques a écrit :
> On 20 déc, 18:53, Michel__D <Michel.NOS...@orange-ft.com.invalid>
> wrote:
>> Re,
>> Michel__D a écrit :
>>> Bonjour,
>>> Jacques a écrit :
>>>> On 19 déc, 14:26, Michel__D <Michel.NOS...@orange-ft.com.invalid>
>>>> wrote:
>>>>> Re,
>>>>> Jacques a écrit :
>>>>>> On 19 déc, 12:20, Michel__D <Michel.NOS...@orange-ft.com.invalid >
>>>>>> wrote:
>>>>>>> Bonjour,
>>>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
>>>>>>> Jacques a écrit :
>>>>>>>> Bonjour,
>>>>>>>> Lorsque je crée un enregistrement dans la table Formation-A ctivité-
>>>>>>>> Liste je voudrais rajouter
>>>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la t able Formation.
>>>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>>>>>>> les deux tables.
>>>>>>>> -Le 2ème enregistrement aussi.
>>>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeu rs)
>>>>>>>> jobtiens une boucle sans fin.
>>>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bie n par
>>>>>>>> Edit.
>>>>>>>> Où se trouve mon erreur ?
>>>>>>>> Je joins le code, et merci pour votre aide.
>>>>>>>> Salutations
>>>>>>>> Private Sub Commande11_Click()
>>>>>>>> On Error GoTo GestionErreur
>>>>>>>> Set db = CurrentDb()
>>>>>>>> '--- Intérogation de rsFormaListe
>>>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations -Activités-
>>>>>>>> Liste", dbOpenDynaset)
>>>>>>>> '--- Intérogation de rsFormation
>>>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations" ,
>>>>>>>> dbOpenDynaset)
>>>>>>>> '--- Test sur base vide
>>>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Valu e)
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Valu e)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.Update
>>>>>>>> End If
>>>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>>>> Do While Not rsFormaListe.EOF
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>>>> "[R éfActivitéOption]=" & Val
>>>>>>>> (Me.cmbOption) & " And " & _
>>>>>>>> "[R éfFormationListe]=" & Val
>>>>>>>> (Me.cmbFormation)
>>>>>>>> '--- Test sur NoMatch
>>>>>>>> If rsFormaListe.NoMatch Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormaListe.Edit
>>>>>>>> End If
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormaListe.Update
>>>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe ]=" &
>>>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>>>> If rsFormation.NoMatch Then
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormation.Edit
>>>>>>>> End If
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéf Animateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value )
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value )
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.MoveNext
>>>>>>>> Loop
>>>>>>>> '--- Màj du sous formulaire
>>>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sf m]..Requery
>>>>>>>> '--- Ferme les objet
>>>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>>>> db.Close: Set db = Nothing
>>>>>>>> GestionErreur:
>>>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Bonjour Michel_D
>>>>>> Voici la relation des tables :
>>>>>> Tbl Formations
>>>>>> RéfRelation
>>>>>> RéfAnimateur
>>>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivit éListe de
>>>>>> la table Formations-Activité-Liste
>>>>>> Salutations
>>>>> Je pense qu'il faut mettre à jour ta table
>>>>> [RéfFormationActivitéListe] avant
>>>>> de récupérer la référence à [txtRéfActivitéListe] que tu viens
>>>>> d'ajouter.
>>>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>>>> texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Salutations
>>>> Bonjour Michel_D
>>>> Jai supprimé le test sur les tables vides, mais je ne peux pas créer
>>>> le 1er enregistrement.
>>>> De même je nai pas pu régler le problème de la boucle.
>>>> Ci-joint une base allégée.
>>>>http://cjoint.com/?mukVkLO1mb
>>>> Salutations
>>> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
>>> quelques
>>> explications par rapport à ton schéma de relations, j'ai entou ré dans
>>> l'image
>>> (voir le lien) ce que je ne comprends pas et qui je pense est le n oeud
>>> du problème.
>>> D'aprés ce que j'ai compris tu veux assurer un suivi de formation d irigé
>>> par des animateurs qui possèdent des activités personnelles.
>>> Ce que je ne comprends pas :
>>> Quelles sont les relations entre les formations et les activitées ?
>>> (A cause de [RéfFormationActivitéListe] dans la table [tbl For mations])
>>>http://cjoint.com/?musRXGwakJ
>> Tiens il y a eu un problème lors de la création du lien, 2ème te ntative.
>>http://cjoint.com/?mus0Ge8N3t-Masquer le texte des messages précéde nts -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
> cheminement de la création des enregistrements :
> Règle :
> - Un animateur peut avoir plusieurs activités (disciplines) donc
> plusieurs formations.
> - Une formation (tbl Formations-Liste) se compose dun PSC1 et des
> UCC1, UCC2, UCC3, UF1, puis par dautres formations, exemple UUC4,
> UUC5 etc ..
> - Chaque UCC a une option (Tbl Formations-Option)
> - Donc lorsque je crée un animateur (tbl animateur) jaffecte sa
> discipline avec RéfActivitéListe (tbl Activité-liste)
> - Puis je passe à sa formations je cherche dans la tbl Formations-
> Activités-Liste
> le trio RéfActivitéListe, RéfActivitéOption, RéfFormationList e sil
> existe je copie lid
> (RéfFormatiobActivitéListe) dans la table formation, autrement je c rée
> ce trio dans la
> Table Formations-Activités-Liste et je copie lid dans la table
> Formations.
> Jespère que ces explications taideront.
> Salutations
Mouais apparemment mes liens ne se font pas corecteemnt.
Je redonne un lien quand même.
http://cjoint.com/?mvukGw87pR
Aprés ce que tu viens de me dire, faut-il comprendre que tu réalise l e
suivi des activités ou le
suivi des formations, en fait la finalité de ta base c'est quoi ?- Masq uer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Jacques a écrit :
> On 20 déc, 18:53, Michel__D
> wrote:
>> Re,
>> Michel__D a écrit :
>>> Bonjour,
>>> Jacques a écrit :
>>>> On 19 déc, 14:26, Michel__D
>>>> wrote:
>>>>> Re,
>>>>> Jacques a écrit :
>>>>>> On 19 déc, 12:20, Michel__D >
>>>>>> wrote:
>>>>>>> Bonjour,
>>>>>>> Quelle est le sens de la relation entre les deux tables ?
>>>>>>> PS:J'ai l'impression que tu réalise l'opération dans l'ordre inverse.
>>>>>>> Jacques a écrit :
>>>>>>>> Bonjour,
>>>>>>>> Lorsque je crée un enregistrement dans la table Formation-A ctivité-
>>>>>>>> Liste je voudrais rajouter
>>>>>>>> lId (réfFormationActivitéListe ) ainsi créé dans la t able Formation.
>>>>>>>> -Les deux tables sont vides le 1er enregistrement se crée bien dans
>>>>>>>> les deux tables.
>>>>>>>> -Le 2ème enregistrement aussi.
>>>>>>>> -Si je reviens sur le 1er enregistrement (avec les mêmes valeu rs)
>>>>>>>> jobtiens une boucle sans fin.
>>>>>>>> -Si je reviens sur le 2ème enregistrement le code passe en bie n par
>>>>>>>> Edit.
>>>>>>>> Où se trouve mon erreur ?
>>>>>>>> Je joins le code, et merci pour votre aide.
>>>>>>>> Salutations
>>>>>>>> Private Sub Commande11_Click()
>>>>>>>> On Error GoTo GestionErreur
>>>>>>>> Set db = CurrentDb()
>>>>>>>> '--- Intérogation de rsFormaListe
>>>>>>>> Set rsFormaListe = db.OpenRecordset("tbl Formations -Activités-
>>>>>>>> Liste", dbOpenDynaset)
>>>>>>>> '--- Intérogation de rsFormation
>>>>>>>> Set rsFormation = db.OpenRecordset("tbl Formations" ,
>>>>>>>> dbOpenDynaset)
>>>>>>>> '--- Test sur base vide
>>>>>>>> If rsFormaListe.RecordCount = 0 Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Valu e)
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Valu e)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.Update
>>>>>>>> End If
>>>>>>>> '--- Boucle sur la table rsFormaliste
>>>>>>>> Do While Not rsFormaListe.EOF
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormaListe.FindFirst "[RéfActivitéListe]=" & Val
>>>>>>>> (Me.txtRéfActivitéListe) & " And " & _
>>>>>>>> "[R éfActivitéOption]=" & Val
>>>>>>>> (Me.cmbOption) & " And " & _
>>>>>>>> "[R éfFormationListe]=" & Val
>>>>>>>> (Me.cmbFormation)
>>>>>>>> '--- Test sur NoMatch
>>>>>>>> If rsFormaListe.NoMatch Then
>>>>>>>> rsFormaListe.AddNew
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormaListe.Edit
>>>>>>>> End If
>>>>>>>> rsFormaListe("réfActivitéListe") = Me. txtRéfActivitéListe
>>>>>>>> rsFormaListe("réfActivitéOption") = Va l(Me.cmbOption)
>>>>>>>> rsFormaListe("réfFormationListe") = Val( Me..cmbFormation)
>>>>>>>> lngCodeRéf = rsFormaListe("RéfFormatio nActivitéListe")
>>>>>>>> rsFormaListe.Update
>>>>>>>> '--- Maj et Ajout dans la tbl rsFormation
>>>>>>>> '--- Recherche si l'enregistrement est trouvé
>>>>>>>> rsFormation.FindFirst "[RéfFormationActivitéListe ]=" &
>>>>>>>> rsFormaListe![RéfFormationActivitéListe]
>>>>>>>> '--- Non trouvé NoMatch vaut False on ajoute
>>>>>>>> If rsFormation.NoMatch Then
>>>>>>>> rsFormation.AddNew
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRé fAnimateur.Value, 0)
>>>>>>>> rsFormation("réfFormationActivitéListe") = lngCodeRéf
>>>>>>>> Else
>>>>>>>> '--- Trouvé NoMatch vaut True on met à jours
>>>>>>>> rsFormation.Edit
>>>>>>>> End If
>>>>>>>> rsFormation("réfAnimateur") = Nz(TxtRéf Animateur.Value, 0)
>>>>>>>> rsFormation("DatesDu") = Nz(txtDateDu.Value )
>>>>>>>> rsFormation("DatesAu") = Nz(txtDateAu.Value )
>>>>>>>> rsFormation.Update
>>>>>>>> rsFormaListe.MoveNext
>>>>>>>> Loop
>>>>>>>> '--- Màj du sous formulaire
>>>>>>>> Forms![frm Màj Formations]![frm Màj Formations-sf m]..Requery
>>>>>>>> '--- Ferme les objet
>>>>>>>> rsFormaListe.Close: Set rsFormaListe = Nothing
>>>>>>>> rsFormation.Close: Set rsFormation = Nothing
>>>>>>>> db.Close: Set db = Nothing
>>>>>>>> GestionErreur:
>>>>>>>> End Sub- Masquer le texte des messages précédents -
>>>>>>> - Afficher le texte des messages précédents -
>>>>>> Bonjour Michel_D
>>>>>> Voici la relation des tables :
>>>>>> Tbl Formations
>>>>>> RéfRelation
>>>>>> RéfAnimateur
>>>>>> RéfFormationActivitéListe-8-----------1-RéfFormationActivit éListe de
>>>>>> la table Formations-Activité-Liste
>>>>>> Salutations
>>>>> Je pense qu'il faut mettre à jour ta table
>>>>> [RéfFormationActivitéListe] avant
>>>>> de récupérer la référence à [txtRéfActivitéListe] que tu viens
>>>>> d'ajouter.
>>>>> PS:Le code pour "Test sur base vide" ne sert à rien.- Masquer le
>>>>> texte des messages précédents -
>>>>> - Afficher le texte des messages précédents -
>>>> Salutations
>>>> Bonjour Michel_D
>>>> Jai supprimé le test sur les tables vides, mais je ne peux pas créer
>>>> le 1er enregistrement.
>>>> De même je nai pas pu régler le problème de la boucle.
>>>> Ci-joint une base allégée.
>>>>http://cjoint.com/?mukVkLO1mb
>>>> Salutations
>>> J'ai regardé ta base et comme j'ai pas tout compris, il me faudrait
>>> quelques
>>> explications par rapport à ton schéma de relations, j'ai entou ré dans
>>> l'image
>>> (voir le lien) ce que je ne comprends pas et qui je pense est le n oeud
>>> du problème.
>>> D'aprés ce que j'ai compris tu veux assurer un suivi de formation d irigé
>>> par des animateurs qui possèdent des activités personnelles.
>>> Ce que je ne comprends pas :
>>> Quelles sont les relations entre les formations et les activitées ?
>>> (A cause de [RéfFormationActivitéListe] dans la table [tbl For mations])
>>>http://cjoint.com/?musRXGwakJ
>> Tiens il y a eu un problème lors de la création du lien, 2ème te ntative.
>>http://cjoint.com/?mus0Ge8N3t-Masquer le texte des messages précéde nts -
>> - Afficher le texte des messages précédents -
> Bonjour Michel_D
> Je ne peux pas ouvrir ta pièce jointe, je te décris donc le
> cheminement de la création des enregistrements :
> Règle :
> - Un animateur peut avoir plusieurs activités (disciplines) donc
> plusieurs formations.
> - Une formation (tbl Formations-Liste) se compose dun PSC1 et des
> UCC1, UCC2, UCC3, UF1, puis par dautres formations, exemple UUC4,
> UUC5 etc ..
> - Chaque UCC a une option (Tbl Formations-Option)
> - Donc lorsque je crée un animateur (tbl animateur) jaffecte sa
> discipline avec RéfActivitéListe (tbl Activité-liste)
> - Puis je passe à sa formations je cherche dans la tbl Formations-
> Activités-Liste
> le trio RéfActivitéListe, RéfActivitéOption, RéfFormationList e sil
> existe je copie lid
> (RéfFormatiobActivitéListe) dans la table formation, autrement je c rée
> ce trio dans la
> Table Formations-Activités-Liste et je copie lid dans la table
> Formations.
> Jespère que ces explications taideront.
> Salutations
Mouais apparemment mes liens ne se font pas corecteemnt.
Je redonne un lien quand même.
http://cjoint.com/?mvukGw87pR
Aprés ce que tu viens de me dire, faut-il comprendre que tu réalise l e
suivi des activités ou le
suivi des formations, en fait la finalité de ta base c'est quoi ?- Masq uer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour Michel_D
La finalité de ma base est en autre la suivi des formations.
Je joins un schéma relationel un peu plus complet.
http://cjoint.com/?mxnvEtltCv
Salutations
Bonjour Michel_D
La finalité de ma base est en autre la suivi des formations.
Je joins un schéma relationel un peu plus complet.
http://cjoint.com/?mxnvEtltCv
Salutations
Bonjour Michel_D
La finalité de ma base est en autre la suivi des formations.
Je joins un schéma relationel un peu plus complet.
http://cjoint.com/?mxnvEtltCv
Salutations