2009-06-18 5 views
1

en créant une base de données Access (2003) principalement utilisée par d'autres programmeurs et la gestion technique en tant qu'outil de validation des données. Je veux mettre un bouton sur les parties du formulaire qui exécute le code, pour montrer le code qui est en cours d'exécution. Ainsi, les programmeurs peuvent l'éditer sur place. Ceci est pour un projet de validation de données avec changement fréquent de code. Supposons que le code se trouve dans un module, il n'est donc pas nécessaire de sauvegarder le formulaire ou de le modifier. Il suffit d'appuyer sur le bouton et de faire apparaître le code en mode code.Afficher le code à partir du code thru (en accès ms)

+0

est-ce pas ce que l'accès VBA IDE est pour? –

+0

Oui, mais je serais prudent avec ça si j'étais vous. (Voir la publication.) – Oorang

Répondre

1

Vous pouvez être limité au code uniquement dans les modules. Mais dans un bouton sur le formulaire, vous pouvez définir l'événement de clic à:

DoCmd.OpenModule « module_name », « the_name_of_some_function »

+0

C'est tout! Je vous remercie. – Avraham

0

Cela fonctionnerait-il pour vous?

Private Sub Command0_Click() 
While True 
Debug.Print "tt" 
If pressed And debugmode Then 
    Stop 
    pressed = False 
End If 
DoEvents 

Wend 
End Sub 

Private Sub Command1_Click() 
    pressed = True 
    ' You can just put here Stop 
End Sub 

Edit: Je veux dire utiliser DoEvents et arrêter

0

Affichage du code est pas si difficile, et vraiment ni est le modifier. Mais je devrais vous avertir de quelques pièges. Tout d'abord, l'approche que vous discutez équivaut à un code auto-modifiable qui déclenchera beaucoup de logiciels antivirus. Deuxièmement, la corruption est un danger constant avec Access et le code auto-modifiable ne fait qu'exacerber ce problème. Toute solution que vous proposez devrait minimiser les modifications et vous devriez également avoir un plan de sauvegarde et de restauration très robuste. Troisièmement, le code auto-modifiable vous empêchera de compiler la base de données (en utilisant mdes) ou de verrouiller le projet. Cela peut conduire à certains très difficile de contrôler et de maintenir le code source.
Je vous suggère plutôt d'utiliser Pure SQL pour modifier vos données. Vous pouvez ensuite stocker et modifier le code SQL dans une table, puis utiliser CurrentDB.Execute pour l'exécuter.

+0

Je ne veux pas modifier le code dans le code, il suffit de l'afficher dans l'éditeur vba. Par exemple, si j'ai une fonction EditDataCust() dans le module "basEditTools", je veux ouvrir l'accès à l'environnement vba, en montrant ce module et le curseur sur EditDataCust(). Je veux le taper en code. – Avraham

+0

Je voulais dire, je veux faire cela dans le code. – Avraham

Questions connexes