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 dans une chaîne de caractères


Sujet :

Macro

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 155
    Points : 77
    Points
    77
    Par défaut Macro Variable dans une chaîne de caractères
    Bonjour,

    J'ai une macro toute simple qui me permet d'importer un fichier txt, et l'un des paramètres de ma macro est le chemin d'accès au fichier.

    Le début de la macro étant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    %macro DPRLIST (tab=, chemin= );
    data &tab ;
    	infile &chemin delimiter = '|' DSD MISSOVER firstobs=2 lrecl=32767 ;
     input 
    EmailAddr :$50.
    ...
    Et l'exécution étant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    %dprlist (tab=dprlist, chemin='D:\Documents and Settings\r0763\.....\20120604_activation.txt');
    Le nom du fichier txt variant, j'aurai aimé placer une macro variable en début de script pour ne pas aller le modifier à l'intérieur du code à chaque utilisation.

    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    %let nom_fichier = 20120710_activation;
     
    %dprlist (tab=dprlist, chemin='D:\Documents and Settings\r0763\.....\&nom_fichier..txt');
    mais cela ne fonctionne pas.

    J'ai également essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    %let nom_fichier = 20120710_activation_mai_juin_DE;
    %let chemin = %str(D:\Documents and Settings\r0763\.....\&nom_fichier..txt);
     
    %dprlist (tab=dprlist, chemin=&chemin.);
    mais sans succès...

    Quelqu'un a-t-il une idée du pourquoi du comment?

    Merci!

  2. #2
    Membre émérite

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2005
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 364
    Points : 2 329
    Points
    2 329
    Par défaut
    Tu peux poster la log?

  3. #3
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 155
    Points : 77
    Points
    77
    Par défaut
    Ceci : (?)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    562  %dprlist (tab=dprlist, chemin=&chemin.);
    NOTE: Ligne générée par la variable macro "CHEMIN".
    1     D:\Documents and Settings\r0763\Mes documents\VPI activation
           -
           23
    ERREUR 23-2: Invalid option name :.
     
    1  !  D:\Documents and Settings\r0763\Mes documents\VPI activation
              ---------                        ---------
              23                               23
    ERREUR 23-2: Invalid option name DOCUMENTS.

  4. #4
    Membre émérite

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2005
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 364
    Points : 2 329
    Points
    2 329
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    let nom_fichier = 20120710_activation;
     
    %dprlist (tab=dprlist, chemin="D:\Documents and Settings\r0763\.....\&nom_fichier..txt");
    tu peux tester ce code?. la macro variable &nom_fichier n'est pas évaluée à cause des quottes simples.

  5. #5
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 155
    Points : 77
    Points
    77
    Par défaut
    Et oui, c'est bien ça. Il fallait utiliser les doubles quotes au lieu des simples.
    Merci beaucoup en tout cas !!!

    ps : pour ma culture perso, tu saurais pourquoi?

  6. #6
    Membre émérite

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2005
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 364
    Points : 2 329
    Points
    2 329
    Par défaut
    c'est un fonctionnement normal.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/05/2015, 09h41
  2. Réponses: 4
    Dernier message: 06/07/2011, 09h35
  3. ?> dans une chaîne de caractéres
    Par nebule dans le forum Langage
    Réponses: 8
    Dernier message: 15/11/2005, 15h01
  4. [C#] Une variable dans une chaine de caractères...
    Par GlorfindelHebril dans le forum Windows Forms
    Réponses: 9
    Dernier message: 31/03/2005, 14h30
  5. Réponses: 4
    Dernier message: 23/06/2004, 09h51

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