Astuce vba access xp : forcer le /decompile

Contenu du snippet

Dans les options de la ligne de commande, /decompile permet de décompiler une base Access, c'est-à-dire retirer tout le code binaire. Cela sert à compacter (mais compacter à fond) la base en vue par exemple d'un archivage, mais surtout à retirer le code binaire "mort", qui n'est plus du tout appelé par le code source (hé oui, ça à l'air bête de le conserver, mais pourtant c'est bien ce qui arrive avec toutes les versions d'Access : si ça se trouve, vous pouvez alléger votre base de quelques Mo !). Le problème, c'est que le /decompile ne marche plus parfois avec Access XP. Solution : ré-importer toutes les tables, requêtes, formulaires, états et modules dans une nouvelle base, et voilà !

Conclusion :


Petits inconvénients : on perd la mise en forme des relations, ainsi que celle des champs des tables (largeur d'affichage), mais c'est pas très grave. Il faut aussi refaire la liste des références VBA, mais tant qu'à faire un peu de ménage, ce n'est pas une mauvaise chose.

Comment savoir si le /decompile a bien fonctionné ? le code source doit être dans un état non-compilé, il suffit de regarder si l'icone tout compiler est activé. Si vous compactez juste après la décompilation, vous obtenez le top du compactage. Toutefois, si vous distribuez une base à un client, il vaut quand même mieux qu'elle soit dans un état tout compilé. Si votre base est au format 2000, vous pouvez tentez une décompilation sur un poste où Access 2000 est installé, au cas où Access XP ne décompilerait pas.

Explication du /decompile en français :
www.trigeminal.com/usenet/usenet004.asp

Obtenir les commandes /compact et /decompile en menus contextuels dans l'explorateur (très pratique, mais attention à l'endroit où est installé Access et sa version, changer éventuellement les chemins avant de fusionner le fichier .reg) :
www.mvps.org/access/modules/mdl0039.htm

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.