Vider champs sur condition
glouton57
Messages postés
22
Date d'inscription
Statut
Membre
Dernière intervention
-
glouton57 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
glouton57 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
Bjr la communauté
Je voudrais vider certain champs de type date sous certaines conditions.
J'ai un etat basé sur une requête R_Clients avec comme champs nom, prenom ville datedebut et datefin.
Comment puis je faire pour vider les champs datedebut et datefin si datefin est anterieur a la date du jour. Tout ca en vba.
merci
Je voudrais vider certain champs de type date sous certaines conditions.
J'ai un etat basé sur une requête R_Clients avec comme champs nom, prenom ville datedebut et datefin.
Comment puis je faire pour vider les champs datedebut et datefin si datefin est anterieur a la date du jour. Tout ca en vba.
merci
A voir également:
- Vider champs sur condition
- Excel cellule couleur si condition texte - Guide
- Comment supprimer une page vide sur word - Guide
- Vider le cache d'une application - Guide
- Comment vider le stockage autre - Forum Mobile
- Comment vider l'absorbeur d'encre canon pixma ? ✓ - Forum Imprimante
7 réponses
Bonsoir,
Il te faut une requête "MiseAJour", afectant la valeur "Null" au champs "DateDebut" et "DateFin" lorsque DateFin <Date().
Cela peut très bien se faire en mode "création" (ou mode "Graphique" selon l'appellation retenue)
En mode SQL ce sera qqch du genre
Il te faut une requête "MiseAJour", afectant la valeur "Null" au champs "DateDebut" et "DateFin" lorsque DateFin <Date().
Cela peut très bien se faire en mode "création" (ou mode "Graphique" selon l'appellation retenue)
En mode SQL ce sera qqch du genre
UPDATE dateDebut, DateFin SET NomTable.dateDebut= Null, NomTable.dateFin= Null WHERE ((NomTable.dateFin)<Date())
Merci d'avoir répondu Tessel75
J'suis tout a fait d'accord avec toi sur la requête de MàJ, et j'utilise cette solution à l'heure actuelle. Le soucis c'est que c'est en manuel et j'aurais voulu automatiser cette opération avec du vba (sans message de confirmation etc) lors de l'ouverture de mon etat.
merci
Bonne journée
J'suis tout a fait d'accord avec toi sur la requête de MàJ, et j'utilise cette solution à l'heure actuelle. Le soucis c'est que c'est en manuel et j'aurais voulu automatiser cette opération avec du vba (sans message de confirmation etc) lors de l'ouverture de mon etat.
merci
Bonne journée
Bonjour,
"Le soucis c'est que c'est en manuel et j'aurais voulu automatiser cette opération avec du vba (sans message de confirmation etc)"
Alors ta question n'est pas bien posée, parce que ce qui te grippe n'est pas (ne serait pas) la requête-MAJ elle-même, mais la commande et l'enchaînement des fonctions à l'intérieur.
Dans ce cas, en opposition avec certains autres internautes, je te recommanderais plutôt de procéder par macros au début pour bien te familiariser avec les différents types de commandes et l'ordre de déclenchement
Sinon la procédure est du type:
Maintenant:"lors de l'ouverture de mon etat"
De 2 choses, ou la requête ne change pas les données-sources de l'état, et alors il n'y a pas de problème,
ou elle change ces données et alors il y a de forts risques que ça ne se passe pas bien, parce que tu lances les calculs pour la mise en forme de l'état, et en même temps tu en changes les données-sources. Si tu tiens à cette mise à jour, il faut mieux:
1) Lancer la requêteMaj
2) Ouvrir l'état ( DoCmd.OpenReport ....) (A voir sur le didacticiel: sélectionner le mot-clé + F1)
Bonne suite
"Le soucis c'est que c'est en manuel et j'aurais voulu automatiser cette opération avec du vba (sans message de confirmation etc)"
Alors ta question n'est pas bien posée, parce que ce qui te grippe n'est pas (ne serait pas) la requête-MAJ elle-même, mais la commande et l'enchaînement des fonctions à l'intérieur.
Dans ce cas, en opposition avec certains autres internautes, je te recommanderais plutôt de procéder par macros au début pour bien te familiariser avec les différents types de commandes et l'ordre de déclenchement
Sinon la procédure est du type:
RequeteMAJ = "UPDATE ...." DoCmd.SetWarnings False ' Exécute la requête sans avertissement DoCmd.RunSQL RequeteMAJ .....
Maintenant:"lors de l'ouverture de mon etat"
De 2 choses, ou la requête ne change pas les données-sources de l'état, et alors il n'y a pas de problème,
ou elle change ces données et alors il y a de forts risques que ça ne se passe pas bien, parce que tu lances les calculs pour la mise en forme de l'état, et en même temps tu en changes les données-sources. Si tu tiens à cette mise à jour, il faut mieux:
1) Lancer la requêteMaj
2) Ouvrir l'état ( DoCmd.OpenReport ....) (A voir sur le didacticiel: sélectionner le mot-clé + F1)
Bonne suite
Génial, marche nickel Tessel75
Merci
Une cht'ite question.
Tu dis :
"elle change ces données et alors il y a de forts risques que ça ne se passe pas bien, parce que tu lances les calculs pour la mise en forme de l'état, et en même temps tu en changes les données-sources"
Oui les données changent, donc vaudrait mieux que je mette la MàJ sur événement lors de l'ouverture du formulaire ?
Merci c'est sympa de ta part.
Merci
Une cht'ite question.
Tu dis :
"elle change ces données et alors il y a de forts risques que ça ne se passe pas bien, parce que tu lances les calculs pour la mise en forme de l'état, et en même temps tu en changes les données-sources"
Oui les données changent, donc vaudrait mieux que je mette la MàJ sur événement lors de l'ouverture du formulaire ?
Merci c'est sympa de ta part.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question