Bonsoir à tous,
Je suis nouveau sur le forum, je viens vers vous pour un problème assez urgent, si vous pouviez m'aider je vous en serais très reconnaissant.
Dans le cadre de mes études je dois réaliser un projet d'une macro VBA qui doit permettre, entre autre, la sélection de plusieurs fichiers.
Jusqu'ici facile, j'ai fini tous mon projet et il fonctionnait très bien chez moi. Seulement voilà a ma fac, impossible de l'utiliser sur certain PC
Ca n'a aucun sens, même version d'excel, même bibliothèque. Voilà l'exemple de code que j'ai utilisé :
Sur le PC ou le code ne fonctionne pas l'erreur semble se situer au niveau de la variable de tableau "Fichier_total". Il me dit "Incompatibilité de type" dès que j'arrive au niveau de la boucle (sur LBound(Fichier_total) par exemple)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub test() Dim Fichier_choisis As Variant, i As Byte Fichier_choisis = Application.GetOpenFilename("txt Files (*.txt), *.txt", Title:="Selection des fichiers", MultiSelect:=True) For k = LBound(Fichier_choisis) To UBound(Fichier_choisis) msgbox(Fichier_choisis(k)) Next k End sub
Si je visualise avec un espion le contenu de "Fichier_total " il m'affiche le chemin et nom du premier fichier.
Encore plus fort, si j’exécute en pas à pas la macro sur le pc ou elle ne fonctionne pas, parfois elle fonctionne !
j'ai ajouté cette condition :
Quand le code ne marche pas j'ai la condition du else.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If IsArray(Fichier_choisis) Then else msgbox("probleme") end if
Un problème sur la déclaration du tableau ? On dirait que selon le pc excel décide n'importe quoi. Je dois rendre mon projet après demain et à cause de cette connerie il y a 50% de chance que le prof ne puisse pas me le corriger. Auriez vous une idée ? C'est incompréhensible !!!
Partager