<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: %let VS call symput(s) in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416375#M102218</link>
    <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;YOU CANNOT USE A MACRO VARIABLE WITH &amp;amp;varname WHEN YOU SET IT IN THE SAME STEP WITH CALL SYMPUT!!!&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I note this information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So , now we suppose a separate %let and call symput(x) without link :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;/* test1 */

%let jour ='jour jour';

%put &amp;amp;jour;

data _null_;

/* test2 */

call symputx('jour2','jour jour');

%put &amp;amp;jour2;

run; &lt;/PRE&gt;&lt;P&gt;You see the difference ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test1 */&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to &lt;FONT color="#FF0000"&gt;'jour jour'&lt;/FONT&gt;&lt;BR /&gt;'jour jour'&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test2 */&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour');&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour2;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR2 resolves to &lt;FONT color="#FF0000"&gt;jour jour&lt;/FONT&gt;&lt;BR /&gt;jour jour&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I look for a bonus character to suppress the quote if I use %let ...&lt;/P&gt;</description>
    <pubDate>Mon, 27 Nov 2017 13:20:52 GMT</pubDate>
    <dc:creator>azertyuiop</dc:creator>
    <dc:date>2017-11-27T13:20:52Z</dc:date>
    <item>
      <title>%let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416320#M102203</link>
      <description>&lt;P&gt;Hello , Good morning ,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want the opinion of a specialist because in my case it's a true mystery to declare the variables. I want obtain a variable which will give like value :&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;DIV class="bbcode_quote_container"&gt;jour jour&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The SAS code :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;%let jour = "jour jour";
%let jour2 = 'jour jour';
%let jour3 = 'jour';
%let jour4 = "jour";
%let jour5 = "jour jour"n;
%let jour6 = 'jour jour'n;
%let jour7 = 'jour'n;
%let jour8 = "jour"n;
 
%put &amp;amp;jour &amp;amp;jour2 &amp;amp;jour3 &amp;amp;jour4 &amp;amp;jour5 &amp;amp;jour6 &amp;amp;jour7 &amp;amp;jour8 ;
 
/* VS */
 
data _null_;
 
call symputx('jour10','jour');
call symputx('jour11','jour jour');
call symputx('jour12',"jour");
call symputx('jour13',"jour jour");
 
run;
 
%put &amp;amp;jour10 &amp;amp;jour11 &amp;amp;jour12 &amp;amp;jour13&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The SAS log :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;NOTE: Writing TAGSETS.SASREPORT13(EGSR) Body file: EGSR
22         
23         GOPTIONS ACCESSIBLE;
24         %let jour = "jour jour";
25         %let jour2 = 'jour jour';
26         %let jour3 = 'jour';
27         %let jour4 = "jour";
28         %let jour5 = "jour jour"n;
29         %let jour6 = 'jour jour'n;
30         %let jour7 = 'jour'n;
31         %let jour8 = "jour"n;
32         
33         %put &amp;amp;jour &amp;amp;jour2 &amp;amp;jour3 &amp;amp;jour4 &amp;amp;jour5 &amp;amp;jour6 &amp;amp;jour7 &amp;amp;jour8 ;
SYMBOLGEN:  Macro variable JOUR resolves to "jour jour"
SYMBOLGEN:  Macro variable JOUR2 resolves to 'jour jour'
SYMBOLGEN:  Macro variable JOUR3 resolves to 'jour'
SYMBOLGEN:  Macro variable JOUR4 resolves to "jour"
SYMBOLGEN:  Macro variable JOUR5 resolves to "jour jour"n
SYMBOLGEN:  Macro variable JOUR6 resolves to 'jour jour'n
SYMBOLGEN:  Macro variable JOUR7 resolves to 'jour'n
SYMBOLGEN:  Macro variable JOUR8 resolves to "jour"n
"jour jour" 'jour jour' 'jour' "jour" "jour jour"n 'jour jour'n 'jour'n "jour"n
34         
35         data _null_;
36         
37         call symputx('jour10','jour');
38         call symputx('jour11','jour jour');
39         call symputx('jour12',"jour");
40         call symputx('jour13',"jour jour");
41         
42         run;
 
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.00 seconds
 
2                                                          The SAS System                            10:51 Monday, November 27, 2017
 
 
43         
44         %put &amp;amp;jour10 &amp;amp;jour11 &amp;amp;jour12 &amp;amp;jour13;
SYMBOLGEN:  Macro variable JOUR10 resolves to jour
SYMBOLGEN:  Macro variable JOUR11 resolves to jour jour
SYMBOLGEN:  Macro variable JOUR12 resolves to jour
SYMBOLGEN:  Macro variable JOUR13 resolves to jour jour
jour jour jour jour jour jour
45         
46         GOPTIONS NOACCESSIBLE;
47         %LET _CLIENTTASKLABEL=;
48         %LET _CLIENTPROJECTPATH=;
49         %LET _CLIENTPROJECTNAME=;
50         %LET _SASPROGRAMFILE=;
51         
52         ;*';*";*/;quit;run;
53         ODS _ALL_ CLOSE;
54         
55         
56         QUIT; RUN;
57&lt;/PRE&gt;&lt;P&gt;If I use %let :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;"jour jour"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;or&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;'jour jour'&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;with the call symput(s) :&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;jour jour&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's the "**bleep**" when we use quotes in the %let , for example when the value must be contain spaces ! &lt;img id="smileymad" class="emoticon emoticon-smileymad" src="https://communities.sas.com/i/smilies/16x16_smiley-mad.png" alt="Smiley Mad" title="Smiley Mad" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the present case it's very dangerous , it's "better" to use call symput(s) .&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You own a solution to around this problem ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 11:18:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416320#M102203</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-27T11:18:14Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416324#M102204</link>
      <description>&lt;P&gt;I think the problem, as with your other questions on the subject, is your refusal to use Base&amp;nbsp;SAS for any task. Why do you need 13 macro variables, some using named literals, with quotes?&amp;nbsp; This is not in any sense a good starting point. Your question:&lt;/P&gt;
&lt;P&gt;I want obtain a variable which will give like value :&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;DIV class="bbcode_quote_container"&gt;jour jour&lt;/DIV&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;Makes no sense as:&lt;/P&gt;
&lt;PRE&gt;%let myvar=jour jour;&lt;/PRE&gt;
&lt;P&gt;Is the answer, so what is the other 12 varaibles for, why are some symputted and others let?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The simple question is Why is any of this code?&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 11:26:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416324#M102204</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2017-11-27T11:26:43Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416351#M102210</link>
      <description>&lt;P&gt;What for?&lt;/P&gt;
&lt;P&gt;90% (or better) probability that you're abusing the macro facility for something it's not meant for.&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 12:18:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416351#M102210</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-27T12:18:28Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416358#M102213</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/45151"&gt;@RW9&lt;/a&gt;&amp;nbsp; The other topic is an other question . We can this topic later .&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here my question in only on %let VS call symput(s) .&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the present case I test the fonction %let but this a problem with this solution.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want give to SAS a value , but when SAS keep this value in memory an kink appear :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;%let myvar="jour jour";&lt;/PRE&gt;&lt;P&gt;or&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;%let myvar='jour jour';&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I look for the bonus character to unread / no print the double or sample quote and consider only work :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;jour jour&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have tested this code :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;%let jour ='jour jour';

data _null_;

call symputx('jour2','jour jour');
call symputx('result','true');

if "&amp;amp;jour"="&amp;amp;jour2" then do;

%put &amp;amp;result;

end;

run; &lt;/PRE&gt;&lt;P&gt;SAS log :&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GOPTIONS ACCESSIBLE;&lt;BR /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour jour');&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('result','true');&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to 'jour jour'&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if "&amp;amp;jour"="&amp;amp;jour2" then do;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR2 resolves to jour jour&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;result;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable RESULT resolves to true&lt;BR /&gt;true&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now with a little difference&amp;nbsp; :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;%let jour ='jour jour';

data _null_;

call symputx('jour2','jour jour jour');
call symputx('result','true');

if "&amp;amp;jour"="&amp;amp;jour2" then do;

%put &amp;amp;result;

end;

run; &lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SAS log :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GOPTIONS ACCESSIBLE;&lt;BR /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour jour');&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('result','true');&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to 'jour jour'&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if "&amp;amp;jour"="&amp;amp;jour2" then do;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR2 resolves to jour jour jour&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;result;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable RESULT resolves to true&lt;BR /&gt;true&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You see the kink in SAS log ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 12:46:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416358#M102213</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-27T12:46:04Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416363#M102215</link>
      <description>&lt;P&gt;You very obviously have NOT tested your code, as this is the log:&lt;/P&gt;
&lt;PRE&gt;24         %let jour ='jour jour';
25         
26         data _null_;
27         
28         call symputx('jour2','jour jour');
29         call symputx('result','true');
30         
31         if "&amp;amp;jour"="&amp;amp;jour2" then do;
WARNING: Apparent symbolic reference JOUR2 not resolved.
32         
33         %put &amp;amp;result;
WARNING: Apparent symbolic reference RESULT not resolved.
&amp;amp;result
34         
35         end;
36         
37         run;
&lt;/PRE&gt;
&lt;P&gt;I repeat for at least the third time:&lt;/P&gt;
&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;YOU CANNOT USE A MACRO VARIABLE WITH &amp;amp;varname WHEN YOU SET IT IN THE SAME STEP WITH CALL SYMPUT!!!&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 12:54:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416363#M102215</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-27T12:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416365#M102216</link>
      <description>&lt;P&gt;Can see the problem here&amp;nbsp; : &lt;A href="https://support.sas.com/rnd/papers/sgf07/Macros_Dont_Work.pdf" target="_blank"&gt;https://support.sas.com/rnd/papers/sgf07/Macros_Dont_Work.pdf&lt;/A&gt; , page 5&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;DIV&gt;What if quotes are&lt;/DIV&gt;&lt;DIV&gt;part of the value?&lt;/DIV&gt;&lt;DIV&gt;%let year='1939';&lt;/DIV&gt;&lt;DIV&gt;Data awards;&lt;/DIV&gt;&lt;DIV&gt;year1=&amp;amp;year;&lt;/DIV&gt;&lt;DIV&gt;year2='&amp;amp;year';&lt;/DIV&gt;&lt;DIV&gt;year3="&amp;amp;year";&lt;/DIV&gt;&lt;DIV&gt;Run;&lt;/DIV&gt;&lt;DIV&gt;What are the values and types (char or num) of each&lt;/DIV&gt;&lt;DIV&gt;variable?&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Mon, 27 Nov 2017 12:57:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416365#M102216</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-27T12:57:01Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416375#M102218</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;YOU CANNOT USE A MACRO VARIABLE WITH &amp;amp;varname WHEN YOU SET IT IN THE SAME STEP WITH CALL SYMPUT!!!&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I note this information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So , now we suppose a separate %let and call symput(x) without link :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;/* test1 */

%let jour ='jour jour';

%put &amp;amp;jour;

data _null_;

/* test2 */

call symputx('jour2','jour jour');

%put &amp;amp;jour2;

run; &lt;/PRE&gt;&lt;P&gt;You see the difference ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test1 */&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to &lt;FONT color="#FF0000"&gt;'jour jour'&lt;/FONT&gt;&lt;BR /&gt;'jour jour'&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test2 */&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour');&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour2;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR2 resolves to &lt;FONT color="#FF0000"&gt;jour jour&lt;/FONT&gt;&lt;BR /&gt;jour jour&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I look for a bonus character to suppress the quote if I use %let ...&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 13:20:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416375#M102218</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-27T13:20:52Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416381#M102219</link>
      <description>&lt;P&gt;Stilll cannot work. It only "works" with you because you do not test it on a fresh SAS session, so the remnants of your earlier mistakes hide your current ones:&lt;/P&gt;
&lt;PRE&gt;24         /* test1 */
25         
26         %let jour ='jour jour';
27         
28         %put &amp;amp;jour;
'jour jour'
29         
30         data _null_;
31         
32         /* test2 */
33         
34         call symputx('jour2','jour jour');
35         
36         %put &amp;amp;jour2;
WARNING: Apparent symbolic reference JOUR2 not resolved.
&amp;amp;jour2
37         
38         run;
&lt;/PRE&gt;</description>
      <pubDate>Mon, 27 Nov 2017 13:32:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416381#M102219</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-27T13:32:47Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416386#M102221</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have tested the code in a new session I confirm the problem :&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;run 1 :&lt;BR /&gt;&lt;BR /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test1 */&lt;BR /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to 'jour jour'&lt;BR /&gt;'jour jour'&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test2 */&lt;BR /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour');&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour2;&lt;BR /&gt;WARNING: Apparent symbolic reference JOUR2 not resolved.&lt;BR /&gt;&amp;amp;jour2&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;BR /&gt;&lt;BR /&gt;run 2 :&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test1 */&lt;BR /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %let jour ='jour jour';&lt;BR /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR resolves to 'jour jour'&lt;BR /&gt;'jour jour'&lt;BR /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data _null_;&lt;BR /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* test2 */&lt;BR /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symputx('jour2','jour jour');&lt;BR /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %put &amp;amp;jour2;&lt;BR /&gt;SYMBOLGEN:&amp;nbsp; Macro variable JOUR2 resolves to jour jour&lt;BR /&gt;jour jour&lt;BR /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; run;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's only in the second run that the value is recognised ...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 13:51:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416386#M102221</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-27T13:51:07Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416438#M102242</link>
      <description>&lt;P&gt;You are running into trouble, because you are trying to use macro language without learning some of the very basic principles involved.&amp;nbsp; Macro language and SAS language are different ... different in purpose, different in how to assign values to variables, different in how to refer to variables.&amp;nbsp; You will need to understand those differences.&amp;nbsp; Here are just some brief examples.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Your original post failed to include this possibility:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;%let jour9 = jour jour;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What is that possibility omitted?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Given your DATA step with YEAR1, YEAR2, and YEAR3, the SAS statements become:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;year1 = '1939';&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;That creates a character variable named YEAR1.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;year2 = '&amp;amp;year';&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;That creates a character variable named YEAR2, where the first character in its value is "&amp;amp;".&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;year3 = "'1939'";&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;That creates a character variable named YEAR3, where the first character in its value is a single quote.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But your real need is threefold.&amp;nbsp; First, experiment with&amp;nbsp;many examples of %LET statements and see what they do.&amp;nbsp; It's easy enough to code your own tests:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;%let year = '1939';&lt;/P&gt;
&lt;P&gt;%put *&amp;amp;year*;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Second, experiment with many examples of CALL SYMPUT and see what they do.&amp;nbsp; Again, easy enough:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data _null_;&lt;/P&gt;
&lt;P&gt;call symputx('year', '1939');&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;%put *&amp;amp;year*;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Finally, appreciate that macro language and SAS language are separate, and do different things.&amp;nbsp; SAS language processes your data.&amp;nbsp; Macro language constructs a program.&amp;nbsp; This is a much more involved topic, and requires finding a few good references to study.&amp;nbsp; Good luck in your studies.&lt;/P&gt;</description>
      <pubDate>Mon, 27 Nov 2017 15:37:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416438#M102242</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-11-27T15:37:46Z</dc:date>
    </item>
    <item>
      <title>Re: %let VS call symput(s)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416622#M102312</link>
      <description>&lt;P&gt;Hello , Good morning ,&lt;BR /&gt;&lt;BR /&gt;After a great number of test , I obtain a concluding result to past the variable which come from %let :&lt;BR /&gt;&lt;BR /&gt;With this code :&lt;BR /&gt;&lt;BR /&gt;%let lien = '\\serveur\sous - dossier\dossiertoto\' ;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;Data _null_

fic1=&amp;amp;lien; /* give &amp;gt; \\serveur\sous - dossier\dossiertoto\ */ /* case to obtain a number if %let is a numeric */
fic2='&amp;amp;lien'; /* give &amp;gt; &amp;amp;lien */
fic3="&amp;amp;lien"; /* give &amp;gt; \\serveur\sous - dossier\dossiertoto\ */ /* case to obtain a string if %let is a numeric */

Run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;Here you can see page 5 of this pdf : &lt;A href="https://support.sas.com/rnd/papers/sgf07/Macros_Dont_Work.pdf" target="_blank"&gt;https://support.sas.com/rnd/papers/sgf07/Macros_Dont_Work.pdf&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;PRE&gt;year1=1939; &amp;gt; num, 1939
year2='&amp;amp;year'; &amp;gt; char, &amp;amp;year
year3="1939"; &amp;gt; char, 1939&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;I note all informations that you have gave.&lt;BR /&gt;&lt;BR /&gt;Error are corrected.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 28 Nov 2017 09:46:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/let-VS-call-symput-s/m-p/416622#M102312</guid>
      <dc:creator>azertyuiop</dc:creator>
      <dc:date>2017-11-28T09:46:34Z</dc:date>
    </item>
  </channel>
</rss>

