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 :

macro variable qui fait avancer une boucle %do


Sujet :

Macro

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Data Analyst
    Inscrit en
    Octobre 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Data Analyst

    Informations forums :
    Inscription : Octobre 2019
    Messages : 5
    Points : 5
    Points
    5
    Par défaut macro variable qui fait avancer une boucle %do
    Bonjour,

    J'ai une table toto avec une variable "quantite"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    data toto;
     x=1; y=1; quantite=2; output;
     x=2; y=2; quantite=1; output;
     x=3; y=3; quantite=3; output;
     run;
    Je voudrais créer une autre table qui contiennent autant de lignes que la somme des quantités (quand quantite vaut 2, je veux générer 2 lignes)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    %macro qte (tab=) ;
     
     data toto2 ;
     set toto;
     quantite2 = 1;
     %let nb_repet = %eval(quantite);
     %do i=1 %to %eval(&nb_repet) ; 
     output ; 
     %end; 
    run;
    %mend; 
    %qte(tab=toto);
    J'ai essayé de mettre dans la macro var nb_repet la var quantite pour que ma boucle s'arrête quand quantite est atteint ... mais il y a une erreur visiblement ...

    Véronique

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Nul besoin de macro, ceci devrait convenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    data toto2;
      set toto;
      do i = 1 to quantite;
        output;
      end;
      drop i;
    run;

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Data Analyst
    Inscrit en
    Octobre 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Data Analyst

    Informations forums :
    Inscription : Octobre 2019
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Merci !
    Ah ben oui, c'est plus simple

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/02/2014, 15h54
  2. Réponses: 2
    Dernier message: 30/03/2012, 18h28
  3. programme qui fait deviner une variable aléatoire
    Par hazaki dans le forum Débuter
    Réponses: 3
    Dernier message: 02/10/2010, 10h58
  4. [RegEx] problème variable au sein d'une boucle for
    Par mussara dans le forum Langage
    Réponses: 4
    Dernier message: 22/06/2006, 14h26
  5. [PHP-JS] Passer une variable PHP->JS dans une boucle
    Par PedroBD dans le forum Langage
    Réponses: 2
    Dernier message: 12/05/2006, 11h43

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