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

  1. #1
    Futur Membre du Club
    Homme Profil pro
    stagiaire chargé de traitement
    Inscrit en
    avril 2019
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : stagiaire chargé de traitement
    Secteur : Conseil

    Informations forums :
    Inscription : avril 2019
    Messages : 5
    Points : 5
    Points
    5

    Par défaut Boucle if sur l'appartenance à une liste

    Bonjour,

    je dois nettoyer une table. J'ai une variable et une liste de modalité sur un pdf, et je dois remplacer les valeurs qui ne sont pas dans la liste par "".
    Pour le moment j'utilise ce code qui marche bien, mais je voulais savoir si vous aviez des idées pour l'optimiser, éviter d'avoir tout à écrire à la main.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    data work.test;
    set propre.fusion2;
    if  var3 NE "NN" and var3 NE "00" and	var3 NE "01" and var3 NE "02" and var3 NE "03" and var3 NE "04" and	var3 NE "05" and var3 NE "06" and
    	var3 NE "07" and var3 NE "08" and var3 NE "09" and var3 NE "10" and var3 NE "11" then var3 = "";
    run;
    Merci d'avance,

    Amoole2o

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mars 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : mars 2019
    Messages : 2
    Points : 5
    Points
    5

    Par défaut

    Bonjour,

    C'est relativement facile.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    data work.test;
    set propre.fusion2;
    if var3 not in("NN" ,"00", "01"/*Et ainsi de suite*/) then var3="";
    run;
    De rien,

  3. #3
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    mai 2011
    Messages
    676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : mai 2011
    Messages : 676
    Points : 1 563
    Points
    1 563

    Par défaut

    Bonsoir,

    à ma connaissance, si tu cherche aussi bien l'allègement du code que l'optimisation en terme de temps de traitement il y a deux voies dont il a été dit dans d'autres conversations qu'elles sont équivalentes :

    Soit en passant par la définition d'un format via une table des données et un test en utilisant le format, soit l'utilisation de la table des modalités dans un hash.


    cordialement

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/04/2007, 09h34
  2. Recherche d'enregistrements sur base d'une liste
    Par michel baily dans le forum SQL
    Réponses: 4
    Dernier message: 31/08/2006, 09h59
  3. Problème sur évènement d'une liste déroulante
    Par krfa1 dans le forum Access
    Réponses: 7
    Dernier message: 05/05/2006, 08h03
  4. Réponses: 16
    Dernier message: 19/11/2005, 16h47
  5. Réactiver un bouton sur afterMaj d'une liste !
    Par samlepiratepaddy dans le forum Access
    Réponses: 5
    Dernier message: 12/09/2005, 13h20

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