G
gaston53
Guest
Bonjour à tous (en particulier à @+Thierry & Ti qui m'ont déjà bien dépanné !),
Le sujet ne se veut pas provocateur, car je sais qu'il a déjà été évoqué à de multiples reprises.
J'envisage d'utiliser, pour cette tâche, la commande shell. Néanmoins mon (nouveau) problème est le suivant :
Je sais que la méthode "shell" est asynchrone, donc que si mon batch n'a pas terminé son boulot, Excel peut reprendre malgré tout la main et continuer d'exécuter le code VBA.
Le batch que j'envisage de lancer en 1ère ligne de code est une requête au format SQL qui attaque un serveur et génère un fichier texte (des milliers de factures identifiées par des champs multiples !) et si ce fichier est incomplet, la cohérence de mon code s'en trouve complètement affecté et les résultats sont intégralement faux.
Pour info, cette requête dure plusieurs dizaines de secondes (voir plante quelquefois) et sa durée est variable suivant la charge du réseau.
Je me posais naïvement la question si il existait un moyen de récupérer le niveau d'errorlevel qui serait testé par une boucle d'attente en attendant la fin du travail. A moins que quelqu'un entrevoit une autre solution qui permette de résoudre cette énigme ?
D'avance merci de votre aide, gaston53.
Le sujet ne se veut pas provocateur, car je sais qu'il a déjà été évoqué à de multiples reprises.
J'envisage d'utiliser, pour cette tâche, la commande shell. Néanmoins mon (nouveau) problème est le suivant :
Je sais que la méthode "shell" est asynchrone, donc que si mon batch n'a pas terminé son boulot, Excel peut reprendre malgré tout la main et continuer d'exécuter le code VBA.
Le batch que j'envisage de lancer en 1ère ligne de code est une requête au format SQL qui attaque un serveur et génère un fichier texte (des milliers de factures identifiées par des champs multiples !) et si ce fichier est incomplet, la cohérence de mon code s'en trouve complètement affecté et les résultats sont intégralement faux.
Pour info, cette requête dure plusieurs dizaines de secondes (voir plante quelquefois) et sa durée est variable suivant la charge du réseau.
Je me posais naïvement la question si il existait un moyen de récupérer le niveau d'errorlevel qui serait testé par une boucle d'attente en attendant la fin du travail. A moins que quelqu'un entrevoit une autre solution qui permette de résoudre cette énigme ?
D'avance merci de votre aide, gaston53.