MS ACCESS---Actualiser tous via VBA
Comment puis-je actualiser tous via vba?
Je veux actualiser toutes les formes ouvertes...
Actualiser quoi? Voulez-vous dire actualiser? Il semble peu probable chose à souhaiter le faire.
btw. il serait bon de forme "d'accepter" certaines des réponses à vos questions précédentes, si elles en ont en effet répondu à votre question suficiently.
btw. il serait bon de forme "d'accepter" certaines des réponses à vos questions précédentes, si elles en ont en effet répondu à votre question suficiently.
OriginalL'auteur Christopher Robinson | 2011-02-07
Vous devez vous connecter pour publier un commentaire.
La raison @CodeSlave réponse n'a probablement pas faire ce que vous avez besoin, c'est que la méthode VBA que vous avez besoin est requery, pas d'actualisation. L'actualisation de l'affichage des modifications apportées aux enregistrements existants, mais seulement actualiser affiche récemment ajouté des enregistrements.
Ici est une version plus concise du code (mettez ceci dans un Module, de sorte que vous pouvez appeler à partir de n'importe quelle forme):
NOTE: Malheureusement, l'actualisation a pour effet secondaire de perdre de l'enregistrement actuellement sélectionné. Cela peut être particulièrement frustrant pour une utilisation si il y a une longue liste de dossiers, car ils peuvent avoir à faire défiler un long chemin pour trouver le dossier, qu'ils étaient déjà en train de regarder.
Merci, que pouvons-nous faire pour contourner erroring arrière de tous les formulaires dans la vue de conception et comment puis-je obtenir les choses à la vue d'origine (puis-je marquer en premier?) plutôt que d'avoir le formulaire de montrer un autre enregistrement avant de procéder à l'actualisation
Vous devriez vérifier le formulaire Lors de propriété (il y a un enum pour les possibilités) pour voir si il est ouvert en mode création, et actualise pas si il est. Si vous souhaitez revenir à l'original de l'enregistrement en cours après l'actualisation, vous devez enregistrer le PK de la valeur avant de les Actualiser et d'utiliser ensuite la méthode FindFirst pour revenir à elle. Les signets ne survivent pas à une actualisation.
OriginalL'auteur Todd Owen
Ce que quelque chose comme cela?
d'actualisation <> repeindre <> requery - @ToddOwen dit, vous voudrez probablement les actualiser au lieu de rafraîchissement.
Je ne comprends pas pourquoi vous utilisez AllForms et la vérification de la IsLoaded de la propriété au lieu de simplement en utilisant les Formulaires de collecte (qui ne comprend que des formes de chargement).
OriginalL'auteur BIBD
Dans un commentaire ci-dessus vous dire:
Vous souhaitez examiner l'événement Activate. Mais ça me dérange d'actualiser le formulaire, sauf si vous savez pour un fait que les enregistrements ont été ajoutés. Je pense que si j'avais besoin de le faire (je ne l'ai jamais fait donc, en fait, mes utilisateurs connaître Shift-F9 où c'est pertinent, mais la plupart d'entre eux n'ont jamais besoin de ça), j'aimerais utiliser le OnActivate de l'événement et de vérifier le nombre d'enregistrements et seulement actualiser le formulaire si le comte ne correspond pas au courant de jeu d'enregistrements.
Mais encore une fois, je considère que c'est un assez exotique chose à faire. En général, c'est probablement une architecture erreur d'avoir trop de formes assis autour avec un jeu d'enregistrements que vous quittez puis revenez à. Ils devraient probablement être complètement fermé au lieu d'être laissées ouvertes quand vous êtes loin d'eux. Cela réduit le nombre de table de poignées, ainsi que le nombre de verrous détenus sur l'extrémité arrière de la base de données, qui peuvent tous deux être des problèmes si il n'est pas gérée correctement.
Robinson Il me semble que vous avez utilisé le Formulaire B pour ajouter un enregistrement à Une Forme et peut-être raté lancement d'Une Forme à ce point.
Si la Forme A/B, l'architecture est en place, B doit être ouvert avec la boîte de dialogue de l'interrupteur de sorte que vous pouvez actualiser Un après B est fermé.
OriginalL'auteur David-W-Fenton