Executer macro SAS a partir de VBA sous Excel

jaw -  
Ben_csm Messages postés 1 Statut Membre -
Bonjour,

moi aussi j'ai le même problème. en effet, j'ai crée une macro SAS pour faire des prévisions et comme l'utilisateur ne connaît pas SAS je suis obliger de crée une interface EXcel ou il va entrer les donner en suite exécuter la macro excel qui va lancer la macro SAS et ensuite importer les résultat vers excel.

Est ce que qlq peu m'aider SVP.

Merci d'avance.

Cdt,
Configuration: Windows 2000
Internet Explorer 6.0

3 réponses

  1. NomDeZeus !
     
    reponse tardive mais peu importe

    pour lancer SAS via excel, il faut créer un fichier . bat (avec bloc notes) comme celui-ci
    ----
    "C:\Program Files\SAS Institute\SAS\V8\sas.exe" "\\toto\programme_sas.sas" -log "\\toto\programme_sas.log"
    exit
    ----

    programme_sas etant bien sur ton programme avec tout les parametres de connection necessaire

    Dans excel si les paramètres son sur le XLS qui lance la macro fait en VBA macro sur le bouton

    Sub Formeautomatique2_QuandClic()
    Shell ("\\z3a7232c\clie\OPC\Pgm SAS\bat\OPC_LAUNCHER_profil1.bat")
    ThisWorkbook.Close SaveChanges:=True
    Application.Quit
    End Sub

    Ceci va ouvrir une fenetre de batch submit en SAS, reste plus qu'à logger !
    Ne pas rouvrir le fichier Excel si celui-ci contient des parametres pour la macro SAS

    Cdlt

    NomDeZeus.com
    1
    1. Ben_csm Messages postés 1 Statut Membre
       
      Bonjour,

      J'ai essayé le code :

      ----
      "C:\Program Files\SAS Institute\SAS\V8\sas.exe" "\\toto\programme_sas.sas" -log "\\toto\programme_sas.log"
      exit
      ----

      J'ai réussi à faire fonctionner dans mon fichier .Bat les deux premieres lignes (qui peuvent se résumer uniquement par la deuxieme : car SAS ouvre automatiquement avec le code lorsque je donne que cette information "\\toto\programme_sas.sas").

      C'est la troisieme commande qui devient beaucoup plus flou pour moi : -log "\\toto\programme_sas.log"
      Rien ne se passe.

      Quand je mets cette commande sous MSDOS, executé par "cmd" dans démarrer/exécuter, il me dit que "_log" n'est pas reconnu en tant que commande interne ou externe, un programme executable ou un fichier de commande ... :(

      Je suis un peu à court d'idée et j'aimerai vraiment exécuter mon programme SAS automatiquement à partir de VBA....

      Quelqu'un peu m'aider ???

      Merci d'avance pour vos idées
      0
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    C'est pas plus simple qu'il ait une formation pour se servir de SAS car pour développer cela coûtera plus que d'apprendre ?
    0
  3. caloo Messages postés 15 Statut Membre
     
    Salut

    Merci pour cette réponse tres intructive...
    0