begin process at 2010 03 21 14:06:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Système

 > 

Exécution

 > 

Lancer des commandes shell Unix depuis un code VBA excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Lancer des commandes shell Unix depuis un code VBA excel

mercredi 26 mars 2008 à 13:07:14 | Lancer des commandes shell Unix depuis un code VBA excel

nazgul64

Bonjour,

Voilà ... j'essaye de percer un des grands mystères du VBA : comment lancer une commande Shell Unix (exemple : ls, rm ...) ... peinard depuis mon code VBA Excel ??

Simple en apparence ... mais je désespère de trouver une réponse

Olivier
mercredi 26 mars 2008 à 13:10:42 | Re : Lancer des commandes shell Unix depuis un code VBA excel

Kristof_Koder

Parce que tu fais tourner Excel depuis un OS Unix ?
mercredi 26 mars 2008 à 14:00:44 | Re : Lancer des commandes shell Unix depuis un code VBA excel

econs

Administrateur CodeS-SourceS


Bah çà va pas être simple çà.

Tu installes un server web sur ton server Unix/Linux. Tu le rends accessible sur ton réseau (ou Internet).
Tu te crées une page server (PHP, JSP, ...) qui réalise la tâche de listage, de suppression. Et tu appelles cette page par un hit HTTP depuis Excel. Tu récupères enfin dans la réponse HTTP le résultat de ta requête (suppression OK, liste des fichiers, ...) et tu parses le tout pour le rendre affichable sous Excel.

Soit tu as mal exprimé ton problème, soit tu vas galérer pour réaliser cette petite demande qui est, soit dit en passant, assez peu commune.

mercredi 26 mars 2008 à 19:03:09 | Re : Lancer des commandes shell Unix depuis un code VBA excel

nazgul64

Merci à vous ... effectivement j'ai mal formulé ma requête.

Je travaille sous Windows (sous Excel en majorité) et je lance des applications sous un serveur Unix auquel j'accède via un émulateur (Hummingbird Exceed).

J'aimerais pouvoir lancer mes applications (runs en mode batch) sur le serveur Unix depuis une macro VBA Excel, récupérer les fichiers résultats et les analyser sous Excel.

Olivier

mercredi 26 mars 2008 à 21:20:59 | Re : Lancer des commandes shell Unix depuis un code VBA excel

Kristof_Koder

Il faut regarder du coté de ton émulateur si tu peux faire ce genre de chose depuis la ligne de commande : cela serait alors faisable en VBA
jeudi 27 mars 2008 à 12:47:55 | Re : Lancer des commandes shell Unix depuis un code VBA excel

econs

Administrateur CodeS-SourceS

Yep
Ca ne fonctionnera que si ton emulateur est "pilotable" autrement qu'à la souris.
Dans le pire, mais alors le pire des cas, quelques sendKeys() te permettront de piloter ton émulateur, mais alors dans ce cas, ce sera assez dégoutant, et surtout pas certain de toujours fonctionner (problèmes pour être certain de la fenêtre qui recevra les sendKeys)


Manu

--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
jeudi 27 mars 2008 à 13:10:22 | Re : Lancer des commandes shell Unix depuis un code VBA excel

nazgul64

Effectivement ... ce matin j'ai essayé d'écrire quelque chose avec des sendkeys (et telnet) et ça marche ... mais comme le fait remarquer MrManu c'est pas très beau et pas très sûr non plus (obligé de jouer sur des instructions Wait pour que les lignes de commandes passent au mieux).

J'aimerais pouvoir trouver une solution plus pratique (mais toujours entièrement piloté depuis VBA) ...

En ce qui concerne l'émulateur j'ai réussi à effectuer des opérations d'upload et download sur le serveur (ainsi que des sorties de liste de fichiers et dossier d'un répertoire avec l'instruction FTPDIR) grâce à quelques rares exemples sur le web d'applications d'instructions OLE (OLE automation) mais j'ai très peu d'info sur l'ensemble des instructions OLE disponibles et leur fonctionnement ... autrement dit je ne sais pas faire d'envoie d'exécution de commandes.

Merci encore de votre aide ...

Olivier
mercredi 24 septembre 2008 à 16:34:56 | Re : Lancer des commandes shell Unix depuis un code VBA excel

groslou2

Un peu tard comme réponse, mais étant donné que j'ai eu le même problème et que j'ai pu trouver une solution, je la fais partager:
- il faut télécharger l'exécutable plink à cette adresse [ Lien ]
- tu le mets par exemple sur ton bureau
- tu crées une macro:
Sub LancerAppli()
    Call Shell("C:\Documents and Settings\ton_nom_sous_windows\Desktop\plink.exe -l ton_login_sous_unix -pw ton_mot_de_passe_sous_unix le_nom_de_ton_serveur_unixta_ligne_de_commande_unix", 0)
End Sub

Après à toi de t'amuser à faire des boucles sur tes commandes unix, ou à faire un fichier de commandes Shell et à le transférer en ftp sous unix pour l'exécuter ensuite.

GL


Cette discussion est classée dans : vba, code, lancer, shell, unix


Répondre à ce message

Sujets en rapport avec ce message

Shell ne marche pas sur un poste [ par yomgui75 ] Bonjour à tous,J'ai un soucis avec un code qui permet de lancer une application en mode caché.Option <SPAN class=Reserved Exécuter un shell Unix depuis VB6 [ par dodocaca ] J'ai besoin de lancer un shell que j'ai écrit sous Unix AIX mais j'aimerai pouvoir le lancer directement depuis VB6.Quelqu'un aurait-il une idée pour Pb avec vb6 en entrant une ligne de code avec l'instruction SHELL [ par milou0606 ] Bonjour,j'ai un probleme sous vb6 quand j'écris cette ligne de code:Shell("C:\Program Files\MSN Messenger\msnmsgr.exe", AppWinStyle.MaximizedFocus) j' VBA supprimer des ligne vide excel ;) [ par lolpop ] rororo mais qui sais qui revient poster sur le forum, et oui c'est momo :D je voudrai supprimer des lignes vides lorsque l'on lance un userform, j'ai VBA + ACCESS [ par nonaud ] Salut à tous,Récemment dans le cadre de mon boulot, j'ai hérité de la mintenance d'une base access98 du genre "fait maison".Je bricole bien un peu de VBA et l'option de complément automatique [ par ZANUS ] Bonsoir à tous Lorsqu'on écrit un code VBA affiche une fenêtre de complément automatique des instructions. Par exemple, si je tape le code suivant: If Lancer procédure VBA d'un fichier à partir d'un autre [ par Orgeat_2006 ] Comment lancer procédure VBA d'un fichier à partir d'un autre ?Merci d'avance ! lancer explorer en tant que shell [ par tom6666 ] Salut à tous voilà j'ai une appli en vb6 qui marche tres bien.Cette appli se lance en tant que shell via HKLM\software\microsoft\windows NT\curent ver quel est le code de cette ligne de vba en vb6 [ par alucard59300 ] voila on m'a dit de mettre cette ligne pour limiter les nombres decimal a 2 chiffre apres la virgule mais elle est en vba et ne marche pas avec vb6 do open VBA et TextFieldParser .NET [ par frederic_bevernage ] Bonsoir,Je découvre - avec une certaine inquiétude - VB2005....J'utilise du code VBA dans VB6 pour avoir une macro compilée donc non modifiable et non


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales