IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macro Discussion :

Comment appeler une macro fonction dans une autre, récupérer une macro variable.


Sujet :

Macro

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 20
    Points : 12
    Points
    12
    Par défaut Comment appeler une macro fonction dans une autre, récupérer une macro variable.
    J'ai une toute petite question, comment est ce possible de récupérer une macro variable pour un calcul dans une macro fonction à partir d'une autre macro fonction?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    %macro test(var=);
    		%let var1=%eval(&var+2);
    		%put &var1;
    %mend;
     
    %macro test2(var=);
    %test(var=&var); *  <<<<<<------- le problème vient de la  un call execute  ou ....... ;
    %let var2= %eval(&var + &var1 + 2);
    %put &var2;
    %mend;
     
    %test2(var=3);
    Merci bien.

  2. #2
    Membre éclairé
    Homme Profil pro
    responsable adjoint service stat
    Inscrit en
    Mars 2009
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : responsable adjoint service stat
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2009
    Messages : 448
    Points : 823
    Points
    823
    Par défaut
    En déclarant ta variable comme globale
    %global VAR1 ; dans ta première macro

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Merci pour ta réponse mais justement je ne veux pas rendre cette variable globale parce que elle sera écrasée au fur et à mesure.

    J'ai besoin de récupérer le résultat d'une macro fonction, appeler une macro fonction dans une macro fonction est ce possible ? (comme dans visual basic application ).

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 747
    Points : 978
    Points
    978
    Par défaut
    ou bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    %macro test(var=);
    		%let var1=%eval(&var+2);
    		%put &var1;
    %mend test;
     
    %macro test2(var=);
       %local var1;
       %test(var=&var);
       %let var2= %eval(&var + &var1 + 2);
       %put var2 = <&var2>;
    %mend test2;
     
    options symbolgen;
     
    %test2(var=5);

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Merci c''est exacte ment ce que je voulais.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Récupérer une balise <img> dans un article depuis une table MySQL
    Par GeDeon35 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 22/09/2011, 16h20
  2. appel d'une fonction dans un autre fichier
    Par funboard dans le forum Langage
    Réponses: 2
    Dernier message: 08/02/2008, 10h26
  3. appeler une fonction dans un autre programme
    Par elghadi_mohamed dans le forum Langage
    Réponses: 3
    Dernier message: 19/10/2007, 20h58
  4. [C#] Comment appeler une fenêtre modale dans un autre thread ?
    Par Pilloutou dans le forum Windows Forms
    Réponses: 6
    Dernier message: 05/10/2006, 12h19
  5. Appeler une fonction dans un autre cadre !
    Par rich25200 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/11/2005, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo