{Access} - Ajouter 1 a chaque enregistrement

Fermé
BiiGiX Messages postés 16 Date d'inscription jeudi 19 février 2009 Statut Membre Dernière intervention 13 août 2010 - 24 juil. 2009 à 12:23
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 - 28 juil. 2009 à 16:13
Bonjour,

Voici mon problème :

J'ai une table avec 8 champs (Date, Age en jour [...]). Je souhaiterai qu'à chaque fois que j'ajoute un enregistrement, la valeur par défaut du champ "Age en jour" soit ajouter de +1 par rapport l'enregistrement précédent. Comment faire? (si possible sans le code VB)

Exemple :

Date | Age
01/01 | 0
02/01 | 1 <- Valeur par défaut
03/01 | 2 <- Valeur par défaut
04/01 | 3 <- Valeur par défaut
... ...

Merci d'avance de vos réponses
A voir également:

8 réponses

Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
24 juil. 2009 à 14:54
Bonjour,

Une petite question afin de pouvoir éventuellement te proposer une solution, est-ce-que la colonne DATE est la clé primaire de ta table? Si tu as des doutes, donne moi toute la description de ta table.
A plus
0
Non ce n'est pas une clé primaire. Merci de m'apporter une solution Christounet
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
27 juil. 2009 à 10:37
Bonjour,

Encore une petite question, ta colonne date contient seulement le jour et le mois ou bien également l'année ?
A plus
0
La date est au format abrégé (jj/mm/aaaa)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
28 juil. 2009 à 11:57
Bonjour,

J'ai essayé de plusieurs façons de définir une valeur par défaut lors de la création d'une table dans Access mais je n'ai pas trouvé de solution.
Je pense que le seul moyen sera de créer une fonction te retournant l'age de la date précédente et ensuite de faire + 1 (en code VB).
A plus
0
tarik_ra Messages postés 2 Date d'inscription mardi 28 juillet 2009 Statut Membre Dernière intervention 28 juillet 2009
28 juil. 2009 à 12:31
Bonjour,
Essaye cette solution :

Tu peux jouer sur l'age, à chaque fois que tu veux fair une insertion, tu met dans le champ age :

select max(age)+1 from ta_table

-----------------------------------------------------------------------
0
BiiGiX Messages postés 16 Date d'inscription jeudi 19 février 2009 Statut Membre Dernière intervention 13 août 2010 2
28 juil. 2009 à 15:16
Merci pour vos réponses. J'ai opté pour la solution de tarik_ra mais je vais essayer de chercher une solution en vb. Encore un grand merci. Est il possible d'obtenir la valeur du dernier enregistrement par une requête ou autre? Si oui comment?
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
28 juil. 2009 à 16:13
Bonjour,

Si tu entends par le dernier enregistrement, celui ayant la plus grande date, alors c'est oui
SELECT * FROM NomTable
ORDER BY ColonneDate DESC

Il faut bien sûr remplacer NomTable par le nom de ta table et ColonneDate par le nom de la colonne contenant la date.
A Plus
0