Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur
l'utilisation de la fonction dlookup.
Voici les circonstances.
J'ai une table contenant environs 10 000 enregistrements dont une des
info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes
formulaires qu'un message apparaisse si au moins un enregistrement à
cette info à vrai. Je fais ça via VBA.
Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher
un enregistrement etc, j'ai voulu utiliser la fonction dlookup.
En gros, je m'en sert pour récupérer le champ de la clé primaire pour
l'enregistrement qu'il trouverait avec la fameuse info vrai.
Ainsi, si il me donne quelque chose c'est qu'il existe au moins un
enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a
pas.
ça me paraissait une bonne idée jusqu'à la mise en production...
En fait, comme c'est pour un usage réseau, j'ai une base contenant les
tables sur serveur et une base contenant le reste ( requête,
formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le
lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ?
Des conseils plus efficaces pour faire la même chose ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jerome crevecoeur
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire? Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then Msgbox("Attention info à vrai",vbinformation) End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur l'utilisation de la fonction dlookup.
Voici les circonstances. J'ai une table contenant environs 10 000 enregistrements dont une des info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulai res qu'un message apparaisse si au moins un enregistrement à cette info à vrai. Je fais ça via VBA. Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un enregistrement etc, j'ai voulu utiliser la fonction dlookup. En gros, je m'en sert pour récupérer le champ de la clé primaire pour l'enregistrement qu'il trouverait avec la fameuse info vrai. Ainsi, si il me donne quelque chose c'est qu'il existe au moins un enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas. ça me paraissait une bonne idée jusqu'à la mise en production... En fait, comme c'est pour un usage réseau, j'ai une base contenant le s tables sur serveur et une base contenant le reste ( requête, formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ? Des conseils plus efficaces pour faire la même chose ?
Merci d'avance...
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire?
Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then
Msgbox("Attention info à vrai",vbinformation)
End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur
l'utilisation de la fonction dlookup.
Voici les circonstances.
J'ai une table contenant environs 10 000 enregistrements dont une des
info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulai res
qu'un message apparaisse si au moins un enregistrement à cette info à
vrai. Je fais ça via VBA.
Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un
enregistrement etc, j'ai voulu utiliser la fonction dlookup.
En gros, je m'en sert pour récupérer le champ de la clé primaire pour
l'enregistrement qu'il trouverait avec la fameuse info vrai.
Ainsi, si il me donne quelque chose c'est qu'il existe au moins un
enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas.
ça me paraissait une bonne idée jusqu'à la mise en production...
En fait, comme c'est pour un usage réseau, j'ai une base contenant le s
tables sur serveur et une base contenant le reste ( requête,
formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le
lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ?
Des conseils plus efficaces pour faire la même chose ?
Lances-tu ton test sur L'evenement ouverture du formulaire? Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then Msgbox("Attention info à vrai",vbinformation) End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur l'utilisation de la fonction dlookup.
Voici les circonstances. J'ai une table contenant environs 10 000 enregistrements dont une des info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulai res qu'un message apparaisse si au moins un enregistrement à cette info à vrai. Je fais ça via VBA. Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un enregistrement etc, j'ai voulu utiliser la fonction dlookup. En gros, je m'en sert pour récupérer le champ de la clé primaire pour l'enregistrement qu'il trouverait avec la fameuse info vrai. Ainsi, si il me donne quelque chose c'est qu'il existe au moins un enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas. ça me paraissait une bonne idée jusqu'à la mise en production... En fait, comme c'est pour un usage réseau, j'ai une base contenant le s tables sur serveur et une base contenant le reste ( requête, formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ? Des conseils plus efficaces pour faire la même chose ?
Merci d'avance...
Fabrice N.
Bonjour jerome crevecoeur,
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire? Si c'est sur current(activation) là c'est catastrophique
Je le lance sur ouverture ( open ).
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then Msgbox("Attention info à vrai",vbinformation) End if
Cela ne devrait pas poser trop de lenteur.
Je viens de faire l'essai, c'est toujours aussi lent.
Cordialement
En tout cas, merci pour le coup de main.
Bonjour jerome crevecoeur,
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire?
Si c'est sur current(activation) là c'est catastrophique
Je le lance sur ouverture ( open ).
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then
Msgbox("Attention info à vrai",vbinformation)
End if
Cela ne devrait pas poser trop de lenteur.
Je viens de faire l'essai, c'est toujours aussi lent.
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Bonjour jerome crevecoeur,
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire? Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then Msgbox("Attention info à vrai",vbinformation) End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
En fait, aprèqs quelques testes, il semble que mon problème vienne de l'accès à la base des données qui est lent.
-Verifier paramètrage de l'antivirus,
-Chemin de la base de données sans espace et assez court
-Ouvrir un formulaire bidon au démarrage
-Vérifiez l'état du réseau
Cordialement
Bonjour jerome crevecoeur,
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire?
Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then
Msgbox("Attention info à vrai",vbinformation)
End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
En fait, aprèqs quelques testes, il semble que mon problème vienne de
l'accès à la base des données qui est lent.
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Bonjour jerome crevecoeur,
Salutations
Lances-tu ton test sur L'evenement ouverture du formulaire? Si c'est sur current(activation) là c'est catastrophique
Tu pourrais essayer ce genre de code:
If Dcount("macle","matable","monchampboolean=true")>0 then Msgbox("Attention info à vrai",vbinformation) End if
Cela ne devrait pas poser trop de lenteur.
Cordialement
En fait, aprèqs quelques testes, il semble que mon problème vienne de l'accès à la base des données qui est lent.
Je fais un autre post pour ça.
Jac
Bonjour Fabrice,
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en champ masqué et regarder s'il contient 1 ou compter combien de lignes dans la requête.
On en reparle quand tu veux.
Jac
"Fabrice N." <"fabrice.n.surlenet" avec l'@ chez free> a écrit dans le message de news:
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur l'utilisation de la fonction dlookup.
Voici les circonstances. J'ai une table contenant environs 10 000 enregistrements dont une des info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulaires qu'un message apparaisse si au moins un enregistrement à cette info à vrai. Je fais ça via VBA. Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un enregistrement etc, j'ai voulu utiliser la fonction dlookup. En gros, je m'en sert pour récupérer le champ de la clé primaire pour l'enregistrement qu'il trouverait avec la fameuse info vrai. Ainsi, si il me donne quelque chose c'est qu'il existe au moins un enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas. ça me paraissait une bonne idée jusqu'à la mise en production... En fait, comme c'est pour un usage réseau, j'ai une base contenant les tables sur serveur et une base contenant le reste ( requête, formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ? Des conseils plus efficaces pour faire la même chose ?
Merci d'avance...
Bonjour Fabrice,
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le
temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en
champ masqué et regarder s'il contient 1 ou compter combien de lignes dans
la requête.
On en reparle quand tu veux.
Jac
"Fabrice N." <"fabrice.n.surlenet" avec l'@ chez free> a écrit dans le
message de news: mn.8ad27d799b9279a3.71537@chezfre...
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur
l'utilisation de la fonction dlookup.
Voici les circonstances.
J'ai une table contenant environs 10 000 enregistrements dont une des info
est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulaires
qu'un message apparaisse si au moins un enregistrement à cette info à
vrai. Je fais ça via VBA.
Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un
enregistrement etc, j'ai voulu utiliser la fonction dlookup.
En gros, je m'en sert pour récupérer le champ de la clé primaire pour
l'enregistrement qu'il trouverait avec la fameuse info vrai.
Ainsi, si il me donne quelque chose c'est qu'il existe au moins un
enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas.
ça me paraissait une bonne idée jusqu'à la mise en production...
En fait, comme c'est pour un usage réseau, j'ai une base contenant les
tables sur serveur et une base contenant le reste ( requête,
formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le lancer
et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ?
Des conseils plus efficaces pour faire la même chose ?
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en champ masqué et regarder s'il contient 1 ou compter combien de lignes dans la requête.
On en reparle quand tu veux.
Jac
"Fabrice N." <"fabrice.n.surlenet" avec l'@ chez free> a écrit dans le message de news:
Bonjour à tous,
Ma qustiobn va paraître bizzare, mais je voudrais votre avis sur l'utilisation de la fonction dlookup.
Voici les circonstances. J'ai une table contenant environs 10 000 enregistrements dont une des info est un boolean ( case à cocher ).
Entre autre chose, je voudrais à l'ouverture de l'un des mes formulaires qu'un message apparaisse si au moins un enregistrement à cette info à vrai. Je fais ça via VBA. Plutôt que de devoir crer des lignes pour ouvrir la table, rechercher un enregistrement etc, j'ai voulu utiliser la fonction dlookup. En gros, je m'en sert pour récupérer le champ de la clé primaire pour l'enregistrement qu'il trouverait avec la fameuse info vrai. Ainsi, si il me donne quelque chose c'est qu'il existe au moins un enregistrement à vrai, si il me retourne "null", c'est qu'il n'y en a pas. ça me paraissait une bonne idée jusqu'à la mise en production... En fait, comme c'est pour un usage réseau, j'ai une base contenant les tables sur serveur et une base contenant le reste ( requête, formulaire,... ) sur le poste client.
Quand je démarre le fameux formulaire, il met un temps fou à me le lancer et visiblement, c'est au niveau de cette fonction que ça rame.
Vous avez des idées à ce sujet ? Des conseils plus efficaces pour faire la même chose ?
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Super, ça m'a l'air pas mal tout ces conseils... je vais jeter un oeil à tout ça...
-Verifier paramètrage de l'antivirus,
-Chemin de la base de données sans espace et assez court
-Ouvrir un formulaire bidon au démarrage
-Vérifiez l'état du réseau
Cordialement
Super, ça m'a l'air pas mal tout ces conseils... je vais jeter un oeil
à tout ça...
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Super, ça m'a l'air pas mal tout ces conseils... je vais jeter un oeil à tout ça...
Un grand merci pour ce lien...
A+
Fabrice N.
Bonjour Jac,
Bonjour Fabrice,
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en champ masqué et regarder s'il contient 1 ou compter combien de lignes dans la requête.
On en reparle quand tu veux.
Jac
J'y avais pensé. Surtout que j'avais une requête qui filtrait déjà pour ces affichages. Je m'en suis donc servi, mais ça n'a pas vraiment été concluant.
En tout cas, merci pour le conseil...
A+
Bonjour Jac,
Bonjour Fabrice,
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le
temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en
champ masqué et regarder s'il contient 1 ou compter combien de lignes dans la
requête.
On en reparle quand tu veux.
Jac
J'y avais pensé. Surtout que j'avais une requête qui filtrait déjà pour
ces affichages. Je m'en suis donc servi, mais ça n'a pas vraiment été
concluant.
tu pourrais passer par une requête avec un 1 dans le champ boléen et voir le temps de réponse. Ensuite, dans le formulaire tu pourrais mettre ce champ en champ masqué et regarder s'il contient 1 ou compter combien de lignes dans la requête.
On en reparle quand tu veux.
Jac
J'y avais pensé. Surtout que j'avais une requête qui filtrait déjà pour ces affichages. Je m'en suis donc servi, mais ça n'a pas vraiment été concluant.
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Voir ma réponse dans le post Acces lent une base sur réseau à Thierry (ze Titi)
(désolé je ne sais pas mettre un lien vers un autre post )
-Verifier paramètrage de l'antivirus,
-Chemin de la base de données sans espace et assez court
-Ouvrir un formulaire bidon au démarrage
-Vérifiez l'état du réseau
Cordialement
Voir ma réponse dans le post Acces lent une base sur réseau à Thierry
(ze Titi)
(désolé je ne sais pas mettre un lien vers un autre post )
-Verifier paramètrage de l'antivirus, -Chemin de la base de données sans espace et assez court -Ouvrir un formulaire bidon au démarrage -Vérifiez l'état du réseau
Cordialement
Voir ma réponse dans le post Acces lent une base sur réseau à Thierry (ze Titi)
(désolé je ne sais pas mettre un lien vers un autre post )