compatibilité outil créé verion Excel 2003 avec version 2007, 2010

hidozo

XLDnaute Occasionnel
Bonjour,

J'ai créé un outil assez lourd sous version Excel 2003 en VBA. Le problème est que quand je veux le mettre sur un ordi avec la version Exel 2007 ou 2010, certains fichiers DLL... ne sont pas rangés dans les mêmes dossiers et donc certaines références sont manquantes et ça bug.

Existe-t'il un moyen simple de transferts d'une version à une autre ?

Plusieurs solutions sont possibles :
- Modification manuel sur les ordi de différentes versions Excel, mais c'est compliqué pour moi de bidouiller chque ordi...
- j'ai testé de créer un fichier dans le dossier de mon outil avec tous les fichiers DLL... dont j'ai besoin, mais Excel n'arrive pas à faire référence à ces fichiers, il fait référence à ce qu'il ya dans Excel
- j'avais testé de vérifier sur l'ord si les fichiers DLL existaient dans le bons dossier et si ce n'était pas le cas, créer un dossier et copier le fichier DLL dedans de façon à ce que les références soient toujours aux même endroits
- Enfin, j'ai bien pensé à utiliser filesearch, mais cette fonction n'existe plus dans 2007 et 2010, il faut faire différentes manoeuvres pour que ça fonctionne et on arrive à ma 1ère remarque.

Donc je suis ouvert à des solutions programmable en VBA.

D'avance merci

Cordialement

Hidozo
 

tototiti2008

XLDnaute Barbatruc
Re : compatibilité outil créé verion Excel 2003 avec version 2007, 2010

Bonjour hidozo,

Quelles dll utilises-tu et comment y fais-tu référence dans ton code ? A quoi te servent ces dll ?
Tu appelles les API (Declare) ou tu passes par Outils - Références
Est-ce que les Excel 2007 ou 2010 sont en 64 bits ?
 

YANN-56

XLDnaute Barbatruc
Re : compatibilité outil créé verion Excel 2003 avec version 2007, 2010

Bonjour hidozo, tototiti, et à ceux qui passeront par là,

tototiti, j'ai un service à te demander:

Veux-tu bien regarder si mon Fichier joint fonctionne chez toi avec 2007.

Je l'ai construit avec 2003, mais la personne que j'aide est en 2007, et ne peut pas l'ouvrir!
(Il a cependant les mêmes références cochées que moi)

Merci par avance, si tu en trouves le temps,

Amicalement en m'excusant de débarquer dans la discussion,

Yann
 

Pièces jointes

  • Z_PASC_21_08.zip
    78.5 KB · Affichages: 30

YANN-56

XLDnaute Barbatruc
Re : compatibilité outil créé verion Excel 2003 avec version 2007, 2010

Pas grave, cher ami tototiti,

Merci cependant d'avoir regardé.

Je vais battre la campagne pour faire tester,
car je ne pige vraiment pas d'où vient le problème!

Amicalement, et au plaisir de te croiser,

Yann
 

hidozo

XLDnaute Occasionnel
Re : compatibilité outil créé verion Excel 2003 avec version 2007, 2010

re

ci-joint le fichier avec la liste des référence.

ci-dessous le code que j'utilise pour cocher les fichiers

Dans les cellules, il y a l'adresse où se trouve les fichiers. J'avais même fait une différence entre les adresses 2003 et 2007, mais cela varie.

Sub Ajout_reference_valide3()
Dim File As String
On Error Resume Next
Worksheets("Introduction").Range("A20:C40").ClearContents
Worksheets("Liste bouton").Range("J55:J100").ClearContents
Recuperer_reference
Set verif = CreateObject("scripting.FileSystemObject")
For i = 55 To 62
For j = 20 To 41
If Worksheets("Liste bouton").Cells(i, 13) = Worksheets("Introduction").Cells(j, 3) Then Worksheets("Liste bouton").Cells(i, 10) = "X"
If Worksheets("Liste bouton").Cells(i + 20, 13) = Worksheets("Introduction").Cells(j, 3) Then Worksheets("Liste bouton").Cells(i + 20, 10) = "X"
Next j
Next i
For i = 55 To 62
If verif.FileExists(Worksheets("Liste Bouton").Cells(i, 11)) Then
If Worksheets("Liste bouton").Cells(i, 10) = "" Then
Worksheets("Liste bouton").Cells(i, 12) = True
File = Worksheets("Liste bouton").Cells(i, 11)
ThisWorkbook.VBProject.References.AddFromFile File
Else
Worksheets("Liste bouton").Cells(i, 12) = True
End If
Else
If verif.FileExists(Worksheets("Liste Bouton").Cells(i + 20, 11)) Then
If Worksheets("Liste bouton").Cells(i + 20, 10) = "" Then
Worksheets("Liste bouton").Cells(i + 20, 12) = True
File = Worksheets("Liste bouton").Cells(i + 20, 11)
ThisWorkbook.VBProject.References.AddFromFile File
Else
Worksheets("Liste bouton").Cells(i + 20, 12) = True
End If
Else
Worksheets("Liste bouton").Cells(i, 12) = False
Worksheets("Liste bouton").Cells(i + 20, 12) = False
End If
End If
Next i
Set verif = Nothing
Exit Sub
End Sub

A la fermeture du fichier, je décoche les fichiers
 

Pièces jointes

  • liste fichier références.xls
    18 KB · Affichages: 91

hidozo

XLDnaute Occasionnel
Re : compatibilité outil créé verion Excel 2003 avec version 2007, 2010

Re bonjour tototiti2008,
Cela me donne des idées.

Si j'ai bien compris, je peux aller chercher les valeurs de mes fichiers dans l'explorateur et passer en objet au lieu de newapplication (enfin pour le fichier outlook.....

Je vais tester

je vais tester également la version de david84 que je comprends peut être mieux.

Je reviens vers vous pour dire si ça fonctionne

Merci

Hidozo
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 183
dernier inscrit
karelhu35