VBA Excel, problème peu commun

Résolu
Yunchi
Messages postés
100
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
14 avril 2009
- 24 févr. 2009 à 14:02
Yunchi
Messages postés
100
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
14 avril 2009
- 25 févr. 2009 à 09:13
Bonjour,


Je vais essayer d'exposer mon problème clairement :)


En gros :


J'ai un dossier dans lequel j'ai un xls, un exe et un txt.


L'exe est un programme codé en C qui ouvre le txt, l'analyse et crée un autre fichier txt avec des statistiques. Quand je double click sur l'exe, tout se passe normalement et analyse le fichier texte et fait son boulot.


Dans mon xls, j'ai une macro qui lance l'exe via :


Path = Workbooks("Simulateur_RRC.xls").Path
RetVal = Shell(Path + "" + "file_analyzer.exe", 1)
Windows("Simulateur_RRC.xls").Activate



Et quand je click sur le bouton, ça lance bien mon exe mais l'exe ne fait pas ce qu'il faut. On arrive directement en fin de l'exe et il ne fait pas son boulot.


Plus de détails :


L'exe en gros :


if (fichier = fopen("nom.txt","r"))
{
analyse ....
affichage avancement ...
fclose(fichier);
}


printf("info...");
system("PAUSE");


Donc :


quand je double click sur l'exe : je sais que tout se passe bien grâce aux infos sur l'avancement de l'analyse


quand je lance mon exe via VB, j'ai juste le printf("info"); et le system("PAUSE"); de la fin mais bien sur les infos affichés sont vides.


Bref je comprends vraiment et en essayant avec un autre exe basique qui affiche des nombres aléatoires, tout marche très bien ...


Voilà s'il y'a quelqu'un qui connait ce problème ou un spécialiste de VB ....


Merci


 




 

23 réponses

Yunchi
Messages postés
100
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
14 avril 2009

24 févr. 2009 à 17:21
Euh désolé pour les posts à la suite ....

Après courte réflexion, ça ne peut pas venir de l'exe puisque quand je double click dessus y'a pas de problème .... ça fait tout comme il faut et c'est seulement quand je le lance avec Excel qu'il ne fait pas tout ...
0
bigfish_le vrai
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
12
24 févr. 2009 à 17:29
Dans ta ligne de code il manque toujours quelque chose !!!

X = ShellExecute(0, "Open", "P:\Excel simulateur RRC\file_analyzer.exe", "", "P:\Excel simulateur RRC", 1)
0
Yunchi
Messages postés
100
Date d'inscription
lundi 30 octobre 2006
Statut
Membre
Dernière intervention
14 avril 2009

25 févr. 2009 à 09:13
Bon je me suis renseigné tu as raison bigfish c'est bien un problème de chemin d'accès. Je vais modifier mon programme en C :)

merci
0