IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

mise à jour d'un champ date


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut mise à jour d'un champ date
    voila j'ai une table avec : date et Année, dans un formulaire, je voudrais que les utilisateurs n'est qu'a saisir le champ Année, et que ma table se mette à jour toute seule au niveau des dates soit entre le 1/01 et 31/12
    comment faire

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    construit ta requête en mettant une clause WHERE du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE Year([MaTable]![MonChampDate]) = 2005
    Tu peux remplacer 2005 par une variable ou un contrôle de formulaire.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    j'ai une table avec Date et année, j'ai crée un form à partir de cette table, dans ce formulaire, les utilisateurs doivent entrer l'année .
    Ex: 2006 ,
    à partir de cette saisie je souhaite que ma table soit mis à jour avec toutes les dates de l'année du 01/01/2006 au 31/12/06 .

    Comment faire?

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Créer un module qui fait une boucle dans que tu n'es pas arrivé à la date de fin.

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    tu peux m'expliquer un peu plus clairement, je suis malgre tout débutant

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Alors le code pour être le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub maj()
    Dim unit As DAO.Recordset, db_unit As DAO.Database
    Set db_unit = CurrentDb
     
    Date_min = CDate("01/01/"&Forms!Annee)
    Date_max = CDate("31/12/"&Forms!Annee)
    Date_moy = Date_min
     
    While Date_moy <= Date_max
    Set unit = db_unit.OpenRecordset("INSERT INTO table(date) SELECT " & Date_moy &"AS [Date] FROM table;"
    Date_moy = Date_moy + 1
    MoveNext
     
    End Sub

  7. #7
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    cela ne marche pas, j'ai un message d'erreur :
    type défini par l'utilisateur non défini
    en surlignant: "unit As DAO.Recordset"

  8. #8
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Quand tu es dans MVB, tu vas dans le menu Outils/Référence..., et la dans la liste tu dois avoir "Microsoft DAO 3.6 Object Library" qui doit être activé, la version peut être différente suivant ta version d'Access

  9. #9
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    maintenant il n'accepte pas l'annee: erreur de compilation , incompatibilité

  10. #10
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    En modifiant le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Date_min = CDate("01/01/" & Forms!Annee )  
    Date_max = CDate("31/12/" & Forms!Annee )

  11. #11
    Membre à l'essai
    Inscrit en
    Mars 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    desolé, mais lmaitenant il y a une erreur de syntaxe dans "
    Set unit = db_unit.OpenRecordset("INSERT INTO table(date) SELECT " & Date_moy &"AS [Date] FROM table;"

  12. #12
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Salut,

    Essaye avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub maj() 
    Dim unit As DAO.Recordset, db_unit As DAO.Database 
    Set db_unit = CurrentDb 
     
    Date_min = CDate("01/01/" & Forms!Annee) 
    Date_max = CDate("31/12/" & Forms!Annee) 
    Date_moy = Date_min 
     
    While Date_moy <= Date_max 
    Set unit = db_unit.OpenRecordset("INSERT INTO table(date) SELECT " & Date_moy & "AS [Date] FROM table;" 
    Date_moy = Date_moy + 1 
    MoveNext 
     
    End Sub
    L'erreur provient peut-être du fait que le & doit être précédent d'un espace.

Discussions similaires

  1. Erreur Mise à jour d'un champs date
    Par obydissonn dans le forum Oracle
    Réponses: 2
    Dernier message: 19/07/2013, 10h55
  2. [AC-2003] Mise à jour d'un champ Date
    Par Thotho-Maxime dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 27/07/2009, 16h44
  3. Problème de mise à jour d'un champ date
    Par aloha dans le forum JDBC
    Réponses: 2
    Dernier message: 17/04/2008, 12h09
  4. mise à jour automatique de champs entre 2 tables
    Par romdyane dans le forum Access
    Réponses: 5
    Dernier message: 11/10/2005, 18h51
  5. Réponses: 2
    Dernier message: 12/02/2003, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo