Bonjour, je suis actuellement en stage et ma principale mission et de reprendre un projet Plant 4D, access. Je souhaiterai à partir d'un formulaire simple ( 2 listes déroulantes et un bouton) modifier les champs d'une colonne de ma table ayant pour valeur "300@277@40".
Voici mon code non fonctionnel rien ne se passe à l'exécution, la table n'est pas modifiée.

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
35
36
37
38
39
40
 
 
Private Sub Commande295_Click()
 
Dim modif As DAO.Recordset
 
'Modifiable306 est ma liste déroulante
If Modifiable306.Value = "300@277@40" Then
 
    'Ouverture de la table nomTable
    DoCmd.OpenTable "nomTable", acViewNormal, acEdit
 
    'Création d'un recordset, de type dbOpenTable : Modification en direct
    Set modif = CurrentDb.OpenRecordset("SELECT colonne1 FROM nomTable where colonne1='300@277@40'", [dbOpenDynaset])
 
    'On se place sur le premier enregistrement
    modif.MoveFirst
 
    'Tant que l'on atteint pas la fin du recordset
    While Not modif.EOF
        'Mode édition
        modif.Edit
        'Condition de changement de donnée
        Dim lField As DAO.Field
        For Each lField In modif.Fields
            If lField.Value = "300@277@40" Then lField.Value = 10
        Next
        'Mise à jour de la table
        modif.Edit
        'Passage au champ suivant
        modif.MoveNext
    Wend
 
    'Fermeture du recordset
    modif.Close
    Set modif = Nothing
 
End If
 
End Sub
Merci d'avance pour votre aide, cordialement.