Bonjour,
Cette routine alimente un fichier temporaire. Les deux fichiers sont identique au niveau de format.
Les deux fichiers contiennent une clé primaire composée (sur deux champs)
Contient Tâches
Clé primaire = ID_FeuilleTemps (numérique mais pas Auto)
Clé primaire = ID_Tâche (numérique mais pas Auto)
TableTempo
Clé primaire = IDFeuilleTemps (numérique mais pas Auto)
Clé primaire = IDTâche (numérique mais pas Auto)
Dans mon formulaire, j'ai Me.TxtNoFeuilleTemps, j'aimerais que cette routine alimente mon fichier temporaire de tous les enregistrement du fichier Contient Tâches pour lequel le ID)_FeuilleTemps = Me.TxtNoFeuilleTemps
Est-ce que la commande FindFirst est la bonne commande ? À chaque fois que je vois un exemple de son utilisation c'est avec un champ texte.
Dans ma tête, je me positionnais sur le premier et de là je commençais ma boucle en me déplacant avec un moveNext
Merci de m'aider !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Sub AlimenterTaches() Dim CTâches As dao.Recordset Dim oDb As dao.Database Set oDb = CurrentDb Set CTâches = oDb.OpenRecordset("Contient Tâches", dbOpenTable) Dim Temp As dao.Recordset Dim oDb1 As dao.Database Set oDb1 = CurrentDb Set Temp = oDb.OpenRecordset("TableTempo", dbOpenTable) ' Se positionner et vérifier si Tâche existe CTâches.FindFirst ([ID_FeuilleTemps] = Me.TxtNoFeuilleTemps) If CTâches.NoMatch = False Then 'Enregistrer dans le fichier temporaire Do While Me.TxtNoFeuilleTemps = CTâches("ID_FeuilleTemps") Temp.AddNew Temp("IDFeuilleTemps").Value = CTâches("ID_FeuilleTemps") Temp("IDTâche").Value = CTâches("ID_Tâche") Temp.Update Temp.MoveNext Loop End If CTâches.Close Set CTâches = Nothing Temp.Close Set Temp = Nothing Set oDb = Nothing Set oDb1 = Nothing
Partager