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 %let


Sujet :

Macro

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut Macro variable %let
    Bonjour,
    Cette proc import marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PROC IMPORT DATAFILE= "D:\BasedeW\DemandeSociale\2012\DS2012_TDB1_3F.xlsx" 
    OUT= WORK.DS2012_TDB1_3F
    dbms=xlsx replace;
    GETNAMES=YES;
    RUN;
    comme j'ai plusieurs années, j'ai voulu essayer ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    %let annee = 2012;
    PROC IMPORT DATAFILE= "D:\BasedeW\DemandeSociale\&annee\DS&annee_TDB1_3F.xlsx" 
    OUT= WORK.DS&annee_TDB1_3F
    dbms=xlsx replace;
    GETNAMES=YES;
    RUN;
    Je ne vois pas où est le problème, voici le msg d'erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WARNING: Apparent symbolic reference ANNEE_TDB1_3F not resolved.

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

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Bonsoir,
    le point à la fin de la macro variable n'est en général pas obligatoire, mais est nécessaire dans ton cas pour lever l'ambiguité "linguistique" dans laquelle tu es tombé.

    "D:\BasedeW\DemandeSociale\&annee\DS&annee._TDB1_3F.xlsx"

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par JeromeMATHIAS Voir le message
    Bonsoir,
    le point à la fin de la macro variable n'est en général pas obligatoire, mais est nécessaire dans ton cas pour lever l'ambiguité "linguistique" dans laquelle tu es tombé.

    "D:\BasedeW\DemandeSociale\&annee\DS&annee._TDB1_3F.xlsx"
    Bonjour,
    Désolé de ne pas avoir pu répondre plus tôt (week-end)
    j'ai toujours le meme message (en vert) avec :
    PROC IMPORT DATAFILE= "D:\BasedeW\DemandeSociale\&annee\DS&annee._TDB1_3F.xlsx"
    ou avec
    PROC IMPORT DATAFILE= "D:\BasedeW\DemandeSociale\&annee.\DS&annee._TDB1_3F.xlsx"

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

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Bonjour,

    il faudrait utiliser la même syntaxe que je t'ai proposé dans la partie OUT=

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par JeromeMATHIAS Voir le message
    Bonjour,

    il faudrait utiliser la même syntaxe que je t'ai proposé dans la partie OUT=
    désolé, l'erreur venait du fait que je n'exécutait pas la ligne libname à chaque fois, parce que généralement on n'exécute la libname qu'une seule fois, maintenant ça marche pour toutes les années.
    Merci

    %let annee = 2014;
    libname progr "D:\BasedeW\DemandeSociale\&annee";

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/04/2015, 17h20
  2. Suppression de macro-variables globales
    Par raf64flo dans le forum Macro
    Réponses: 2
    Dernier message: 09/04/2008, 15h25
  3. Réponses: 3
    Dernier message: 14/03/2008, 11h03
  4. Utiliser les macro variables avec sql
    Par Euseibus dans le forum Macro
    Réponses: 5
    Dernier message: 25/10/2007, 18h40
  5. [VBA-E] Macro Variable Caption
    Par ArchiveAgain dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2007, 05h20

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