Access
 sql >> Base de données >  >> RDS >> Access

Comment afficher les éléments masqués dans le navigateur d'objets VBA

Le problème

Un de mes développeurs juniors a reçu le message d'erreur suivant en essayant d'accéder à la définition du VBA Array() fonction :

Impossible de passer à 'Array' car il est masqué.

La solution

J'ai suivi avec cette réponse :

C'est une partie de _HiddenModule de la bibliothèque standard VBA, qui est masquée par défaut. Vous pouvez afficher les membres masqués en cliquant avec le bouton droit de la souris dans la fenêtre de l'Explorateur d'objets et en cochant la case pour afficher les membres masqués :

Quant à pourquoi le Array() la fonction est cachée dans le _HiddenModule... Je n'en ai aucune idée.

Le Maître :Stephen Lebans

J'ai entendu parler pour la première fois du paramètre "Afficher les membres masqués" par la légende d'Access Stephen Lebans, lorsque j'essayais de couler des événements pour signaler des sections .

Voici un exemple du code de Stephen que j'ai fini par incorporer dans l'un de mes modules de classe de gestion d'événements :

Private WithEvents mSection As Access.[_SectionInReport]
Private WithEvents mSectionPageHeader As Access.[_PageHdrFtrInReport]
Private WithEvents mSectionPageFooter As Access.[_PageHdrFtrInReport]

Comme Stephen le dit dans le message du forum lié, "vous ne savez jamais ce que vous pourriez trouver" lorsque vous commencez à parcourir les membres cachés d'un objet.

Stephen est un chien rusé.

Avenant

Vous trouverez ci-dessous une copie de l'échange original que j'ai eu avec l'un de mes développeurs.

Si vous êtes curieux, l'application que nous utilisons est Keybase, que je recommande vivement.