Bonjour à tous
Pour protéger le code des macros que j'ai créées sous Excel (mais aussi sous Catia), on m'a demandé de les transformer en .dll avec VB6.0 grâce à cette méthode : http://www.developpez.net/forums/d70...-standard-vb6/
Je parviens bien à créer des .dll et même à les utiliser dans l'éditeur VB6.0. Pour reprendre l'exemple du lien, je fais des tests avec la fonction Increment, je déclare mon .dll, et je fais msgbox increment(1), qui devrait m'afficher"2". Donc ça marche très bien l'éditeur VB6.0, mais dans l'éditeur VBA d'Excel, ça fait planter le logiciel qui "cesse de fonctionner". Pareil pour Catia où j'ai l'erreur "AutomationInfrastructure.tst a cessé de fonctionner".
Je ne sais plus trop quoi faire.. Donc je viens demander si quelqu'un ne peut pas m'aider!
J'ai du VB7.1 pour Excel, et du VB6.5 pour Catia, l'erreur viendrait elle de là?
Merci d'avance.
Edit :
Après plusieurs manipulations, je parviens finalement à utiliser un .dll avec Excel avec la fonction Increment, cependant, ça marche avec les chiffre (long, integer,...), mais il y a un problème avec les variables string qui ne passent pas, et qui font planter le logiciel...
Je fais un test avec cette fonction dans mon .dll :
Avec VB6.0, j'ai ????????????????????????????? qui s'affiche, et avec Excel, ça plante et ça cesse de fonctionner..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Public Function Afficher(MyString As String) As String MsgBox MyString End Function
Si j'appelle la fonction de la sorte :
Ca affiche la bonne chose avec VB6.0, mais ça plante quand même avec Excel..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Public Function Afficher(Byval MyString) As String MsgBox MyString End Function
Si quelqu'un a une solution..
Partager