Bonsoir,
Voici un petit probleme que je n'arrive pas a resoudre:
J'ai mis en place un classeur Excel partagé sur un reseau local, les utilisateurs y effectuent des operations de routine en lancant des macros. VBA+classeur partagé ne font pas bon ménage, mais toutes mes procedures fonctionnent correctement depuis plusieurs mois.
Seulement, si la majorité des utilisateurs sont encore sous Excel 2003, certains d'entre eux utilisent Excel 2010. Et cela pose un probleme, car ce classeur interagit avec Outlook, donc necessite la libraire "Microsoft Outlook 11.0" sous 2003, et "Microsoft Outlook 14.0" sous 2010.
Le probleme etant que si Excel 2010 update automatiquement les references pour un fichier créé sous 2003, Excel 2003 ne sait pas downgrader les references pour un fichier modifié par Excel 2010. Ce qui a donc pour effet chez les utilisateurs de 2003, si le fichier a été enregistre dernierement par un utilisateur de 2010, de referencer une librairie inconnue et donc d'etre incapable de fonctionner.
Je precise que les procedures que j'utilise ne supportent pas le late binding (Gestion de RDV avec envoi d'invitations), et que je suis donc obligé de declarer le tout avant le debut de celles-ci.
Ce qu'il me faudrait, c'est donc qu'au lancement du classeur, la version de Excel (Application.Version) soit verifiée, que la librairie consequente soit chargee, et qu'ensuite la variable "olapp as new outlook.application" soit declarée (car si elle est declarée avant, cela provoquera une erreur des le debut dans le cas ou la librairie n'est pas lancée)
J'espere que tout est clair, si quelqu'un savait comment me depanner...
Merci.
Voici un petit probleme que je n'arrive pas a resoudre:
J'ai mis en place un classeur Excel partagé sur un reseau local, les utilisateurs y effectuent des operations de routine en lancant des macros. VBA+classeur partagé ne font pas bon ménage, mais toutes mes procedures fonctionnent correctement depuis plusieurs mois.
Seulement, si la majorité des utilisateurs sont encore sous Excel 2003, certains d'entre eux utilisent Excel 2010. Et cela pose un probleme, car ce classeur interagit avec Outlook, donc necessite la libraire "Microsoft Outlook 11.0" sous 2003, et "Microsoft Outlook 14.0" sous 2010.
Le probleme etant que si Excel 2010 update automatiquement les references pour un fichier créé sous 2003, Excel 2003 ne sait pas downgrader les references pour un fichier modifié par Excel 2010. Ce qui a donc pour effet chez les utilisateurs de 2003, si le fichier a été enregistre dernierement par un utilisateur de 2010, de referencer une librairie inconnue et donc d'etre incapable de fonctionner.
Je precise que les procedures que j'utilise ne supportent pas le late binding (Gestion de RDV avec envoi d'invitations), et que je suis donc obligé de declarer le tout avant le debut de celles-ci.
Ce qu'il me faudrait, c'est donc qu'au lancement du classeur, la version de Excel (Application.Version) soit verifiée, que la librairie consequente soit chargee, et qu'ensuite la variable "olapp as new outlook.application" soit declarée (car si elle est declarée avant, cela provoquera une erreur des le debut dans le cas ou la librairie n'est pas lancée)
J'espere que tout est clair, si quelqu'un savait comment me depanner...
Merci.