Vous semble-t-il raisonable de déclarer de manière
globale une variable type DAO.Database et déclarer au
lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet
Set Db = CurrentDb
Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet
Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
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
pgz
Bonjour,
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle instance de la base ouverte, il vaut mieux utiliser une variable de type DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb ...
Set db = Nothing En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est gébéralement pas trop recommandé de multiplier les variables globales...
Ce n'est qu'un avis.
Bon courage,
-- pgz _____________________________
Bonjour à tous
Vous semble-t-il raisonable de déclarer de manière globale une variable type DAO.Database et déclarer au lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
Merci d'avance
Cordialement
Jeff
Bonjour,
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle
instance de la base ouverte, il vaut mieux utiliser une variable de type
DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet
Set Db = CurrentDb
...
Set db = Nothing
En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est
gébéralement pas trop recommandé de multiplier les variables globales...
Vous semble-t-il raisonable de déclarer de manière
globale une variable type DAO.Database et déclarer au
lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet
Set Db = CurrentDb
Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet
Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle instance de la base ouverte, il vaut mieux utiliser une variable de type DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb ...
Set db = Nothing En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est gébéralement pas trop recommandé de multiplier les variables globales...
Ce n'est qu'un avis.
Bon courage,
-- pgz _____________________________
Bonjour à tous
Vous semble-t-il raisonable de déclarer de manière globale une variable type DAO.Database et déclarer au lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
Merci d'avance
Cordialement
Jeff
Jeff
Bonjour
Merci pour la réponse
Le but de la variable globale, c'est surtout pour éviter de déclarer et donc de créer une variable locale car j'utilise cela dans bon nombre de procédure et de fonction.
Maintenant je ne sais pas si cela peut porter préjudice à l'exécution du code et engendrer des problèmes d'exécution particulier et "dangereux".
Cordialement
Jeff
"pgz" a écrit dans le message de news:
Bonjour,
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle instance de la base ouverte, il vaut mieux utiliser une variable de type DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb ...
Set db = Nothing En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est gébéralement pas trop recommandé de multiplier les variables globales...
Ce n'est qu'un avis.
Bon courage,
-- pgz _____________________________
Bonjour à tous
Vous semble-t-il raisonable de déclarer de manière globale une variable type DAO.Database et déclarer au lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
Merci d'avance
Cordialement
Jeff
Bonjour
Merci pour la réponse
Le but de la variable globale, c'est surtout pour éviter de déclarer
et donc de créer une variable locale car j'utilise cela dans
bon nombre de procédure et de fonction.
Maintenant je ne sais pas si cela peut porter préjudice à
l'exécution du code et engendrer des problèmes d'exécution
particulier et "dangereux".
Cordialement
Jeff
"pgz" <pgz@discussions.microsoft.com> a écrit dans le message de news:
395AEB34-BC6A-48A0-BD82-757485DCBFDB@microsoft.com...
Bonjour,
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle
instance de la base ouverte, il vaut mieux utiliser une variable de type
DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet
Set Db = CurrentDb
...
Set db = Nothing
En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est
gébéralement pas trop recommandé de multiplier les variables globales...
Vous semble-t-il raisonable de déclarer de manière
globale une variable type DAO.Database et déclarer au
lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet
Set Db = CurrentDb
Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet
Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?
Le but de la variable globale, c'est surtout pour éviter de déclarer et donc de créer une variable locale car j'utilise cela dans bon nombre de procédure et de fonction.
Maintenant je ne sais pas si cela peut porter préjudice à l'exécution du code et engendrer des problèmes d'exécution particulier et "dangereux".
Cordialement
Jeff
"pgz" a écrit dans le message de news:
Bonjour,
A mon avis comme chaque appel de la méthode CurrentDb crée une nouvelle instance de la base ouverte, il vaut mieux utiliser une variable de type DAO.DataBAse:
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb ...
Set db = Nothing En n'oubliant pas de libérer la varaiable.
Pour la déclaration en variable globale, pourquoi pas, mais il n'est gébéralement pas trop recommandé de multiplier les variables globales...
Ce n'est qu'un avis.
Bon courage,
-- pgz _____________________________
Bonjour à tous
Vous semble-t-il raisonable de déclarer de manière globale une variable type DAO.Database et déclarer au lancement de l'application Set Db = CurrentDb ?
D'autre part au lieu de :
Dim Db As DAO.Database, Mj As DAO.RecordSet Set Db = CurrentDb Set Mj = Db.OpenRecordset(...)
peut-on plus facilement utiliser :
Dim Mj As DAO.RecordSet Set Mj = CurrentDb.OpenRecordSet(...)
Quel(s) serait(ent) les contre-indications de tels déclarations ?