Je tiens tout d'abord à préciser que je ne maitrise pas le language VBA.
J'ai un fichier excel avec des macros qui fonctionnait bien sous 2003 mais bug sous 2007.
Je n'ai rien modifié au fichier.
Je cherche à ouvrir un fichier DIF, à le copier dans un fichier excel déjà ouvert.
Voici le début de codage du fichier excel :
Sub Sam2()
'
' EXECUTION_GENERALE Macro
'
Dim obj, objxl As Object ' Variables d' objets Excel
Dim MyData As DataObject
Dim src, source, nb_lignes, nb_lines, i, j, k As Integer
Dim xls_file, xls_path, dif_file, dif_path, nom_classeur, txt, nv As String
Dim colonne(15) As String ' sert pour "conversion" du dif par rechercher/remplacer (",","."...)
Dim coldates(10) As String ' sert pour formatage des dates
Dim colheures(10) As String ' sert pour formatage des heures
Dim import As Boolean
Dim copier_formules As Boolean
Set MyData = New DataObject ' Sert au vidage du presse-papier avant fermeture dif
' import = True ' si import=false on traite la liste en cours sinon on importe le dif
copier_formules = False
J'ai le message d'erreur suivant quand j'arrive à la dernière ligne:
Erreur d'exécution '432'
Nom du fichier ou de la classe introuvable lors de l'opération
Automation
Le fichier DIF et XLS sont bien dans le même dossier.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 25 mars 2013 à 13:43
Salut
On t'a déjà répondu mais tu n'en as pas tenu compte et tu n'as pas poursuivi.
On a vraiment l'impression de perdre du temps à te répondre ...
Dernière tentative ...
Qu'y a t-il dans ta variable dif_path au moment de l'erreur ?
Méthode de débogage :
- F9 sur une ligne de code; elle change de couleur
Le programme s'y arrêtera au prochain passage.
Lors de l'arrêt, survole avec la souris tes variables pour visualiser leur contenu, ou va dans la fenêtre de debogage (Ctrl-G) et tape
? maVariable
pour qu'elle s'inscrive dans la fenêtre.
- F8 (VB6) ou F10 (.Net) pour avancer d'une ligne de code
- F5 pour continuer normalement
A quoi te sert xls_file ?
Ton programme est encombré de plein de lignes qui ne servent à rien.
Essaye de comprendre ces lignes et de supprimer celles qui sont inutiles.
A tester :
Ce fichier .DIF, quand tu double-cliques dessus, que se passe t-il ?
Si windows te propose d'aller chercher sur internet quel programme peut gérer ce genre de fichier, c'est que ce type d'objet n'est pas géré par le système. C'est un problème d'installation.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on le partage (Socrate)
MarcPL
Messages postés172Date d'inscriptionjeudi 8 décembre 2011StatutMembreDernière intervention21 juillet 20132 25 mars 2013 à 13:46
Bonjour ! Comme déjà évoqué sur un autre forum (‼),
même en 2003 cela ne fonctionne pas en l'état.
Comme de réponse je n'ai pas eu, arrêté là je me suis …
___________________________________________________________________________________________________________________
Comme la vitesse de la lumière est supérieure à celle du son, certains ont l'air brillant avant d'avoir l'air con !
Par contre, j'ai essayé de l'ouvrir en double cliquant dessus et rien ne se passe. J'ai même essayé de faire un clic droit et ouvrir avec et je choisis EXCEL et rien ne se passe. Pour l'ouvrir je dois ouvrir excel.
Peut-être est ce une piste à mon pb.
xls_file c'est le nom du fichier excel qui est ouvert