Bonjour à tous,

Je me retrouve face à un problème à 2 étapes et même avec les sujets suivants je n'ai pas réussi à trouver une réponse fonctionnelle à mon soucis :

http://www.developpez.net/forums/d18...ue-references/

http://www.developpez.net/forums/d79...eference-code/

http://www.developpez.net/forums/d17...ent-reference/

http://www.developpez.net/forums/d13...reference-vba/

http://www.developpez.net/forums/d57...nce-manquante/

La 1ère étape que je souhaiterais réaliser est de supprimer automatiquement les références manquantes de mon classeur selon le pc utilisé.

j'ai aussi essayé ça mais sans succès :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Sub supp_ref()
Dim r As Object
With ThisWorkbook.VBProject
    For Each r In .References
        If r.Description Like "*MANQUANT*" Then .References.Remove .References(r.Name): Exit For
    Next r
End With
End Sub
Je tombe sur le message "Erreur de chargement de la DLL".

Etape 2 : Pour les références manquantes, il faudrait que je puisse ajouter les bonnes versions de références si elles existent et sinon bin... tant pis elles sont supprimées Typiquement, j'utilise dans mon programme les références pour piloter Visio 2007 à partir d'Excel (références Microsoft Visio 12.0 Type library et Microsoft Visio 12.0 Drawing control type library). J'ai essayé de lancer la macro sur un Visio 2002 et bien sur ces références n'existent pas elles sont nommées Microsoft Visio 2002 Type library un truc du genre... et bien sur certains PC ne seront pas forcément équipés de Visio et je devrais mettre un message bloquant à l'utilisateur dans ce cas.

Est ce que quelqu'un aurait une idée de comment procéder ?

Merci d'avance pour ceux qui prendront le temps de se pencher sur mon problème.

P.S : le but final est de pouvoir faire tourner les macros pour "toutes" les versions Excel et Visio (on va dire au moins de 2003 à aujourd'hui, et pourquoi pas plus si affinité )