Bonjour à tous,

J'ai acheté un nouveau PC dernièrement, avec Windows 8.1, le grand saut un peu déroutant au démarrage je reconnais.

J'ai réinstallé tous mes programmes, y compris les bases Access. Après quelques soucis au démarrage avec des DLL manquantes, tout a été remis dans l'ordre. Mes applications fonctionnaient.

Lors de l'installation d'un autre logiciel, j'ai eu des soucis de connectivité. Pour contourner le problème (connexion internet devenue impossible), j'ai restauré le PC avec un fichier de restauration datant de trois jours. Tout s'est bien passé jusqu'au moment où j'ai voulu ouvrir une des applications Access 2010. Et là, j'ai un problème que un contrôle ImageList avec le message suivant : "Impossible d'ajouter le noeud (dans un treeview) : ImageList must be initialized before it can be used". Je ne vais pas traduire, je pense que tout le monde a compris.

J'ai alors rechargé les DLL suivantes sous C:\Windows\System32 : MSCOMCTL.OCX et MSCOMCT2.OCX en les copiant depuis mon ancien PC sous Windows XP. Mais pas d'amélioration.
J'ai recherché ici et je suis tombé sur le lien de LOUFAB qui apportait un patch correcteur (que j'avais déjà installé il y a quelques mois). J'ai chargé le fichier ZIP et je l'ai lancé mais toujours pas d'amélioration.

Je suis allé, à la main, dans les propriétés de mon treeview pour lui associé le contrôle imagelist sans amélioration.
Je l'ai aussi fait par le code mais là, j'ai une autre erreur : élément inconnu !
Les fichiers OCX sont bien référencés dans les références de VBA au bon endroit.

Et plus curieux : sur le même PC j'ai une autre base access dans laquelle j'ai aussi un treeview associé à un ImageList et là, il fonctionne sans erreur !!!


Alors, mon problème serait-il dans une référence, un fichier OCX ou dans mon code d'après vous ?
Car j'avoue que je suis un peu perplexe ...

Merci à vous.