Comment incrémenter de 1 unité un champ de table par une requete "Mise à Jour"

2 réponses
Avatar
pierre.valersteinas
Bonjour,

dans une table comprenant 4 champs, le dernier (numérique) n'est pas
renseigné.
Quelle requête "mise à jour" faut-il créer pour affecter au dernier champ
une valeur numérique qui s'incrémente de 1 unité pour tous les
enregistrements de la table.
Quel serait son code en VBA ?
La valeur de départ est un nombre défini.(par exemple 137)

Merci pour votre aide


voici la table Import-Abandon

Import_Abandon NUMAD MONTANT DATEABANDON NUMCERFA
8178 1,84 31/08/2008 137
11948 17,09 31/12/2008
12467 69,92 31/12/2008
10729 18,39 31/12/2008
10720 39,36 31/12/2008
6102 60 31/12/2008
7559 5,82 17/10/2008
7559 9,4 25/12/2008
13885 158,91 17/10/2008
11688 33 16/12/2008
13703 13 19/12/2008

2 réponses

Avatar
Eric
Bonjour,

Une proposition sans SQL ferait l'affaire ?

Sub MajCERFA(NumDEPART As Long)
'Charger la référence Microsoft DAO 3.x Object Library
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("TABLE_ABANDON")
While Not rst.EOF
rst.Edit
rst(3) = NumDEPART ' correspond au 4e champ
rst.Update
NumDEPART = NumDEPART + 1
rst.MoveNext
Wend
Set rst = Nothing
End Sub

que tu lances par call MajCERFA(137) ou MajCERFA 137

pierre.valersteinas a écrit :
Bonjour,

dans une table comprenant 4 champs, le dernier (numérique) n'est pas
renseigné.
Quelle requête "mise à jour" faut-il créer pour affecter au dernier champ
une valeur numérique qui s'incrémente de 1 unité pour tous les
enregistrements de la table.
Quel serait son code en VBA ?
La valeur de départ est un nombre défini.(par exemple 137)

Merci pour votre aide


voici la table Import-Abandon

Import_Abandon NUMAD MONTANT DATEABANDON NUMCERFA
8178 1,84 31/08/2008 137
11948 17,09 31/12/2008
12467 69,92 31/12/2008
10729 18,39 31/12/2008
10720 39,36 31/12/2008
6102 60 31/12/2008
7559 5,82 17/10/2008
7559 9,4 25/12/2008
13885 158,91 17/10/2008
11688 33 16/12/2008
13703 13 19/12/2008







--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Avatar
pierre.valersteinas
Bonjour,

merci beaucoup pour cette solution très simple
Pierre


"Eric" a écrit dans le message de news:

Bonjour,

Une proposition sans SQL ferait l'affaire ?

Sub MajCERFA(NumDEPART As Long)
'Charger la référence Microsoft DAO 3.x Object Library
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("TABLE_ABANDON")
While Not rst.EOF
rst.Edit
rst(3) = NumDEPART ' correspond au 4e champ
rst.Update
NumDEPART = NumDEPART + 1
rst.MoveNext
Wend
Set rst = Nothing
End Sub

que tu lances par call MajCERFA(137) ou MajCERFA 137

pierre.valersteinas a écrit :
Bonjour,

dans une table comprenant 4 champs, le dernier (numérique) n'est pas
renseigné.
Quelle requête "mise à jour" faut-il créer pour affecter au dernier champ
une valeur numérique qui s'incrémente de 1 unité pour tous les
enregistrements de la table.
Quel serait son code en VBA ?
La valeur de départ est un nombre défini.(par exemple 137)

Merci pour votre aide


voici la table Import-Abandon

Import_Abandon NUMAD MONTANT DATEABANDON NUMCERFA
8178 1,84 31/08/2008 137
11948 17,09 31/12/2008
12467 69,92 31/12/2008
10729 18,39 31/12/2008
10720 39,36 31/12/2008
6102 60 31/12/2008
7559 5,82 17/10/2008
7559 9,4 25/12/2008
13885 158,91 17/10/2008
11688 33 16/12/2008
13703 13 19/12/2008







--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr