Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une table
mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture ou
la fermeture de tel ou tel formulaire des calculs soient faits d'un
nombre d'enregistrements avec des cases à cocher et que les résultats de
ces calculs soient stockés dans une table avec la date du jour, par
exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de la
table, mais le problème vient du fait que j'aimerais n'avoir qu'une
seule valeur par jour et pas une à chaque fois que les calculs sont
faits, en fait j'aimerai qu'a chaque fois qu'un calcul est fait la
valeur REMPLACE celle de la journée en cours, par exemple si le 15/07 je
fais le calcul a 10h30 et a 17h30 je ne veux garder que la valeur de
17h30 et je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est pas
très élégant et assez lourd en ressources car il faut lancer une macro
qui execute les 2 requetes et comme la base tourne en réseau sur
20+ postes ca ralentit le bazar.
Merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une table
mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture ou
la fermeture de tel ou tel formulaire des calculs soient faits d'un
nombre d'enregistrements avec des cases à cocher et que les résultats de
ces calculs soient stockés dans une table avec la date du jour, par
exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de la
table, mais le problème vient du fait que j'aimerais n'avoir qu'une
seule valeur par jour et pas une à chaque fois que les calculs sont
faits, en fait j'aimerai qu'a chaque fois qu'un calcul est fait la
valeur REMPLACE celle de la journée en cours, par exemple si le 15/07 je
fais le calcul a 10h30 et a 17h30 je ne veux garder que la valeur de
17h30 et je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est pas
très élégant et assez lourd en ressources car il faut lancer une macro
qui execute les 2 requetes et comme la base tourne en réseau sur
20+ postes ca ralentit le bazar.
Merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une table
mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture ou
la fermeture de tel ou tel formulaire des calculs soient faits d'un
nombre d'enregistrements avec des cases à cocher et que les résultats de
ces calculs soient stockés dans une table avec la date du jour, par
exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de la
table, mais le problème vient du fait que j'aimerais n'avoir qu'une
seule valeur par jour et pas une à chaque fois que les calculs sont
faits, en fait j'aimerai qu'a chaque fois qu'un calcul est fait la
valeur REMPLACE celle de la journée en cours, par exemple si le 15/07 je
fais le calcul a 10h30 et a 17h30 je ne veux garder que la valeur de
17h30 et je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est pas
très élégant et assez lourd en ressources car il faut lancer une macro
qui execute les 2 requetes et comme la base tourne en réseau sur
20+ postes ca ralentit le bazar.
Merci de votre aide
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un sql
de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un sql
de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un sql
de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne marche
pas si il n'y a pas d'enregistrement pour la date du jour puisque la
requete de suppression me donne une erreur "impossible de supprimer
dans la table spécifiée" ce qui est juste puisque les valeurs n'ont
pas encore été stockées, donc il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la date
du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme l'ouverture
ou la fermeture de tel ou tel formulaire des calculs soient faits
d'un nombre d'enregistrements avec des cases à cocher et que les
résultats de ces calculs soient stockés dans une table avec la date
du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C de
la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un calcul
est fait la valeur REMPLACE celle de la journée en cours, par
exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne veux
garder que la valeur de 17h30 et je me moque de celle de 10h30.,
c'est pour faire des statistiques journalières et donc je ne veux
pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer une
macro qui execute les 2 requetes et comme la base tourne en réseau
sur 20+ postes ca ralentit le bazar.
Merci de votre aide
On Thu, 15 Jul 2004 02:57:19 -0700, Eric wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
On Thu, 15 Jul 2004 02:57:19 -0700, Eric <f_framZZ@hotmail.com> wrote:
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
On Thu, 15 Jul 2004 02:57:19 -0700, Eric wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en fonction
car une macro, si mes souvenirs sont bons, peut exécuter du code mais
seulement des fonctions et pas des procédures. (Du moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir si
tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en fonction
car une macro, si mes souvenirs sont bons, peut exécuter du code mais
seulement des fonctions et pas des procédures. (Du moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir si
tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa6fntvzarkwbw@news.free.fr:
On Thu, 15 Jul 2004 02:57:19 -0700, Eric <f_framZZ@hotmail.com> wrote:
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en fonction
car une macro, si mes souvenirs sont bons, peut exécuter du code mais
seulement des fonctions et pas des procédures. (Du moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir si
tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon un
sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez logique
comme idée, mais je suppose que ce genre de truc ne peut se faire
qu'en VBA, donc je crée un module de code que j'appéle à partir de ma
macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque les
valeurs n'ont pas encore été stockées, donc il me faudrait un truc
du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a une
table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à cocher
et que les résultats de ces calculs soient stockés dans une table
avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre les
valeurs calculées A B et C et les mettre dans les champs A B et C
de la table, mais le problème vient du fait que j'aimerais n'avoir
qu'une seule valeur par jour et pas une à chaque fois que les
calculs sont faits, en fait j'aimerai qu'a chaque fois qu'un
calcul est fait la valeur REMPLACE celle de la journée en cours,
par exemple si le 15/07 je fais le calcul a 10h30 et a 17h30 je ne
veux garder que la valeur de 17h30 et je me moque de celle de
10h30., c'est pour faire des statistiques journalières et donc je
ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce n'est
pas très élégant et assez lourd en ressources car il faut lancer
une macro qui execute les 2 requetes et comme la base tourne en
réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur txl@free.fr sans problèmes
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa6fntvzarkwbw@news.free.fr:
On Thu, 15 Jul 2004 02:57:19 -0700, Eric <f_framZZ@hotmail.com>
wrote:
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl <nobody@nowhere.com> écrivait
news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
--
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
--
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
--
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
Txl écrivait news::Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa6gedkparkwbw@news.free.fr:
Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur txl@free.fr sans problèmes
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa6fntvzarkwbw@news.free.fr:
On Thu, 15 Jul 2004 02:57:19 -0700, Eric <f_framZZ@hotmail.com>
wrote:
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl <nobody@nowhere.com> écrivait
news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate, ChampA,
ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non, si
c'est le cas on fait un Update sinon on ajoute l'enregistrement à la
table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur, histoire
de tester le sql. Toi, tu devras récupérer ces valeurs à partir de tes
requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB=" &
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & "," &
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!) pour
pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour par
une macro avec la commande ExécuterCode)
A+
Eric
Txl écrivait news::Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et à
sa syntaxe maudite (un coup des . un coup des ; un coup des ! enbfin
bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter du
code mais seulement des fonctions et pas des procédures. (Du moins
sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de voir
si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table, sinon
un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut se
faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du jour
puisque la requete de suppression me donne une erreur "impossible
de supprimer dans la table spécifiée" ce qui est juste puisque
les valeurs n'ont pas encore été stockées, donc il me faudrait un
truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec la
date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des calculs
soient faits d'un nombre d'enregistrements avec des cases à
cocher et que les résultats de ces calculs soient stockés dans
une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A B
et C de la table, mais le problème vient du fait que j'aimerais
n'avoir qu'une seule valeur par jour et pas une à chaque fois
que les calculs sont faits, en fait j'aimerai qu'a chaque fois
qu'un calcul est fait la valeur REMPLACE celle de la journée en
cours, par exemple si le 15/07 je fais le calcul a 10h30 et a
17h30 je ne veux garder que la valeur de 17h30 et je me moque de
celle de 10h30., c'est pour faire des statistiques journalières
et donc je ne veux pas avoir 12 enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les valeurs
d'aujourd'hui avant de calculer les nouvelles valeurs mais ce
n'est pas très élégant et assez lourd en ressources car il faut
lancer une macro qui execute les 2 requetes et comme la base
tourne en réseau sur 20+ postes ca ralentit le bazar.
Merci de votre aide
Voila mon module "stats" une fois sauvé, que faire pour le transformer en
fonction ? il suffit juste de remplacer sub et end sub par function et end
function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
Voila mon module "stats" une fois sauvé, que faire pour le transformer en
fonction ? il suffit juste de remplacer sub et end sub par function et end
function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
Voila mon module "stats" une fois sauvé, que faire pour le transformer en
fonction ? il suffit juste de remplacer sub et end sub par function et end
function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
Coucou,
Voila mon module "stats" une fois sauvé, que faire pour le transformer
en fonction ? il suffit juste de remplacer sub et end sub par
function et end function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Encore merci pour ton aide.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
tr = rqoffrescrees.CompteDeref: te =
rqoffresxmises.CompteDedatetransmission: ts > rqoffressucces.CompteDesucces
If Not IsNull(DLookup("[Dateenr]", "Tblstat", "[dateenr]=#" &
Format(Date, "mm/dd/yy") & "#")) Then
strSQL = "Update tblstat set tr=" & tr & ", ts=" & ts & ",
te=" &
te & " Where dateenr=#" & Format(Date, "mm/dd/yy") & "#;"
Else
strSQL = "Insert Into Tblstat(dateenr, tr, te, ts)" & "
Values(#"
& Format(Date, "mm/dd/yy") & "#," & tr & "," & te & "," & ts & ");"
End If
CurrentDb.Execute strSQL
End Subre,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate,
ChampA, ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non,
si c'est le cas on fait un Update sinon on ajoute l'enregistrement à
la table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur,
histoire de tester le sql. Toi, tu devras récupérer ces valeurs à
partir de tes requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB="
&
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & ","
&
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!)
pour pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour
par une macro avec la commande ExécuterCode)
A+
Eric
Txl écrivait news::Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que
l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et
à sa syntaxe maudite (un coup des . un coup des ; un coup des !
enbfin bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter
du code mais seulement des fonctions et pas des procédures. (Du
moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de
voir si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait
news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table,
sinon un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut
se faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du
jour puisque la requete de suppression me donne une erreur
"impossible de supprimer dans la table spécifiée" ce qui est
juste puisque les valeurs n'ont pas encore été stockées, donc
il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec
la date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des
calculs soient faits d'un nombre d'enregistrements avec des
cases à cocher et que les résultats de ces calculs soient
stockés dans une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A
B et C de la table, mais le problème vient du fait que
j'aimerais n'avoir qu'une seule valeur par jour et pas une à
chaque fois que les calculs sont faits, en fait j'aimerai qu'a
chaque fois qu'un calcul est fait la valeur REMPLACE celle de
la journée en cours, par exemple si le 15/07 je fais le calcul
a 10h30 et a 17h30 je ne veux garder que la valeur de 17h30 et
je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les
valeurs d'aujourd'hui avant de calculer les nouvelles valeurs
mais ce n'est pas très élégant et assez lourd en ressources
car il faut lancer une macro qui execute les 2 requetes et
comme la base tourne en réseau sur 20+ postes ca ralentit le
bazar.
Merci de votre aide
Coucou,
Voila mon module "stats" une fois sauvé, que faire pour le transformer
en fonction ? il suffit juste de remplacer sub et end sub par
function et end function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Encore merci pour ton aide.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
tr = rqoffrescrees.CompteDeref: te =
rqoffresxmises.CompteDedatetransmission: ts > rqoffressucces.CompteDesucces
If Not IsNull(DLookup("[Dateenr]", "Tblstat", "[dateenr]=#" &
Format(Date, "mm/dd/yy") & "#")) Then
strSQL = "Update tblstat set tr=" & tr & ", ts=" & ts & ",
te=" &
te & " Where dateenr=#" & Format(Date, "mm/dd/yy") & "#;"
Else
strSQL = "Insert Into Tblstat(dateenr, tr, te, ts)" & "
Values(#"
& Format(Date, "mm/dd/yy") & "#," & tr & "," & te & "," & ts & ");"
End If
CurrentDb.Execute strSQL
End Sub
re,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate,
ChampA, ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non,
si c'est le cas on fait un Update sinon on ajoute l'enregistrement à
la table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur,
histoire de tester le sql. Toi, tu devras récupérer ces valeurs à
partir de tes requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB="
&
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & ","
&
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!)
pour pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour
par une macro avec la commande ExécuterCode)
A+
Eric
Txl <nobody@nowhere.com> écrivait news:opsa6gedkparkwbw@news.free.fr:
Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que
l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et
à sa syntaxe maudite (un coup des . un coup des ; un coup des !
enbfin bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur txl@free.fr sans problèmes
re,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter
du code mais seulement des fonctions et pas des procédures. (Du
moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de
voir si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl <nobody@nowhere.com> écrivait
news:opsa6fntvzarkwbw@news.free.fr:
On Thu, 15 Jul 2004 02:57:19 -0700, Eric <f_framZZ@hotmail.com>
wrote:
Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table,
sinon un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut
se faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl <nobody@nowhere.com> écrivait
news:opsa59t5t8arkwbw@news.free.fr:
Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du
jour puisque la requete de suppression me donne une erreur
"impossible de supprimer dans la table spécifiée" ce qui est
juste puisque les valeurs n'ont pas encore été stockées, donc
il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec
la date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des
calculs soient faits d'un nombre d'enregistrements avec des
cases à cocher et que les résultats de ces calculs soient
stockés dans une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A
B et C de la table, mais le problème vient du fait que
j'aimerais n'avoir qu'une seule valeur par jour et pas une à
chaque fois que les calculs sont faits, en fait j'aimerai qu'a
chaque fois qu'un calcul est fait la valeur REMPLACE celle de
la journée en cours, par exemple si le 15/07 je fais le calcul
a 10h30 et a 17h30 je ne veux garder que la valeur de 17h30 et
je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les
valeurs d'aujourd'hui avant de calculer les nouvelles valeurs
mais ce n'est pas très élégant et assez lourd en ressources
car il faut lancer une macro qui execute les 2 requetes et
comme la base tourne en réseau sur 20+ postes ca ralentit le
bazar.
Merci de votre aide
Coucou,
Voila mon module "stats" une fois sauvé, que faire pour le transformer
en fonction ? il suffit juste de remplacer sub et end sub par
function et end function ?
Pour etre franc je ne sais pas quelles différences il y a entre sub,
module fonction et autres joyeusetés d'access.
Encore merci pour ton aide.
Sub RechDateValeursTxl()
Dim strSQL As String
Dim tr, ts, te As Integer
tr = rqoffrescrees.CompteDeref: te =
rqoffresxmises.CompteDedatetransmission: ts > rqoffressucces.CompteDesucces
If Not IsNull(DLookup("[Dateenr]", "Tblstat", "[dateenr]=#" &
Format(Date, "mm/dd/yy") & "#")) Then
strSQL = "Update tblstat set tr=" & tr & ", ts=" & ts & ",
te=" &
te & " Where dateenr=#" & Format(Date, "mm/dd/yy") & "#;"
Else
strSQL = "Insert Into Tblstat(dateenr, tr, te, ts)" & "
Values(#"
& Format(Date, "mm/dd/yy") & "#," & tr & "," & te & "," & ts & ");"
End If
CurrentDb.Execute strSQL
End Subre,
Voila un exemple de la procédure:
Elle manipule une table nommée TableDate ayant 4 champs: UneDate,
ChampA, ChampB, ChampC.
On regarde si l'enregistrement pour la date courante existe ou non,
si c'est le cas on fait un Update sinon on ajoute l'enregistrement à
la table.
J'ai mis dans mon exemple des valeurs pour les 3 champs en dur,
histoire de tester le sql. Toi, tu devras récupérer ces valeurs à
partir de tes requêtes.
Sub RechDateValeursTxl()
Dim strSQL As String
' les valeurs ci-dessous c'est pour le test
NewA = 100: NewB = 200: NewC = 300
'on regarde si la recherche aboutie
If Not IsNull(DLookup("[UneDate]", "TableDate", "[UneDate]=#" _
& Format(Date, "mm/dd/yy") & "#")) Then
'si l'enregistrement existe pour cette date
' on définit un sql d'insertion
strSQL = "Update TableDate set ChampA=" & NewA & ", ChampB="
&
NewB & ", ChampC=" & NewC _
& " Where UneDate=#" & Format(Date, "mm/dd/yy") & "#;"
Else
'si l'enregistrement à cette date n'existe pas on fait un sql
d'ajout
strSQL = "Insert Into TableDate(UneDate, ChampA, ChampB,
ChampC)" _
& " Values(#" & Format(Date, "mm/dd/yy") & "#," & NewA & ","
&
NewB _
& "," & NewC & ");"
End If
' on execute le SQL validé par le If Not IsNull(...)
CurrentDb.Execute strSQL
End Sub
Une fois que tu as modifié ton code pour récupérer les valeurs, tu
changes le Sub en Function (on va utiliser les "effets de bord" !!!)
pour pouvoir faire exécuter cette fonction à partir d'une macro.
(Plus "beau" mais plus long : Créer une fonction dont la seule
instruction est d'appeler la procédure. Fonction appelée à son tour
par une macro avec la commande ExécuterCode)
A+
Eric
Txl écrivait news::Ben j'ai fait un module comme suit mais bien sur ca ne marche pas
Option Compare Database
Dim x As Boolean
x = DLookup("[dateenr]", "tblstats", "[dateenr]=now()")
If x = True Then
Delete tblstat.dateenr, tblstat.tr, tblstat.te, tblstat.ts
FROM tblstat
INSERT INTO tblstat ( tr, te, ts )
SELECT rqoffrescrees.CompteDeref,
rqoffresxmises.CompteDedatetransmission,
rqoffressucces.CompteDesucces
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
Else
INSERT INTO tblstat ( tr, te, ts )
SELECT [rqoffrescrees.CompteDeref],
[rqoffresxmises.CompteDedatetransmission],
[rqoffressucces.CompteDesucces]
FROM rqoffrescrees, rqoffressucces, rqoffresxmises
COmme tu peux le voir les résultats des comptes sont appelés dans 3
requetes supplémentaires et( à la compilation il me dit que
l'argument
case est manquant.
Je veux bien essayer ton exemple car je ne comprends rien au VBA et
à sa syntaxe maudite (un coup des . un coup des ; un coup des !
enbfin bref, trop compliqué pour moi....)
Merci beaucoup de ton aide
ps : tu peux me mailer le tout sur sans problèmesre,
Oui en VBA et si tu veux je peux te faire passer la procédure.
Si tu veux l'appeler par une macro, il faudra la transformer en
fonction car une macro, si mes souvenirs sont bons, peut exécuter
du code mais seulement des fonctions et pas des procédures. (Du
moins sous W2k).
Je tiens ca à ta dispo car j'avais préparé un exemple. A toi de
voir si tu veux chercher par toi-même ou t'aider de l'exemple.
A+
Eric
Txl écrivait
news::On Thu, 15 Jul 2004 02:57:19 -0700, Eric
wrote:Bonjour Txl,
Moi je te propose de faire une recherche dans ta table de
l'enregistrement correspondant à la date du jour avec la fonction
DlookUp.
Si elle retourne Null, tu fais un SQL d'ajout dans la table,
sinon un sql de mise à jour des champs pour cette date.
Ca te fait qu'une seule requête à exécuter.
Ca te conviendrait ?
Ca me conviendrait très bien comme système et ca parait assez
logique comme idée, mais je suppose que ce genre de truc ne peut
se faire qu'en VBA, donc je crée un module de code que j'appéle à
partir de ma macro c'est ca ?
Je vais m'attaquer au code ce qui va bien faire rigoler le
compilateur
VBA....
Merci de la suggestion
JC
A+
Eric
Txl écrivait
news::Complément d'information :
Avec mon système de suppression avant nouvelle création cela ne
marche pas si il n'y a pas d'enregistrement pour la date du
jour puisque la requete de suppression me donne une erreur
"impossible de supprimer dans la table spécifiée" ce qui est
juste puisque les valeurs n'ont pas encore été stockées, donc
il me faudrait un truc du genre
s'il existe un enregistrement avec la date du jour remplace les
valeurs par les nouvelles, sinon crées un enregistrement avec
la date du jour et stockes les valeurs
Encore merci de votre aide
Bonjour,
Je voudrais ajouter des données issues de requetes de calcul a
une table mais avec une logique un peu spéciale.
Je voudrais que lorsque la base fait une opération comme
l'ouverture ou la fermeture de tel ou tel formulaire des
calculs soient faits d'un nombre d'enregistrements avec des
cases à cocher et que les résultats de ces calculs soient
stockés dans une table avec la date du jour, par exemple :
Date A B C
11/07/04 18 24 54
12/07/04 21 14 21
13/07/04 5 14 12
15/07/04 25 32 45
Et ainsi de suite...
Jusque la ca marche car je peux avec une requete ajout prendre
les valeurs calculées A B et C et les mettre dans les champs A
B et C de la table, mais le problème vient du fait que
j'aimerais n'avoir qu'une seule valeur par jour et pas une à
chaque fois que les calculs sont faits, en fait j'aimerai qu'a
chaque fois qu'un calcul est fait la valeur REMPLACE celle de
la journée en cours, par exemple si le 15/07 je fais le calcul
a 10h30 et a 17h30 je ne veux garder que la valeur de 17h30 et
je me moque de celle de 10h30., c'est pour faire des
statistiques journalières et donc je ne veux pas avoir 12
enregistrements pour le 15/07.
Pour le moment je fais ca avec une requete qui efface les
valeurs d'aujourd'hui avant de calculer les nouvelles valeurs
mais ce n'est pas très élégant et assez lourd en ressources
car il faut lancer une macro qui execute les 2 requetes et
comme la base tourne en réseau sur 20+ postes ca ralentit le
bazar.
Merci de votre aide