<?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: Macro error referencing character variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79108#M17084</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="819840" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;: Conversely, if &lt;A __default_attr="809989" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt; and I correctly interpreted what you are trying to do, the following would definitely be a lot more generalizable (I think):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data temp (index= (state));&lt;/P&gt;&lt;P&gt;&amp;nbsp; set data_2012;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select catt("'",name,"'")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; into :vars separated by ","&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from dictionary.columns&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where libname="WORK" and&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; memname="DATA_2012"&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dcl hash hh ( ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definekey ('k' ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definedata (&amp;amp;vars.);&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definedone ();&lt;/P&gt;&lt;P&gt;&amp;nbsp; do k= 1 by 1 until ( last.state ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set temp ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; by state ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; hh.add ();&lt;/P&gt;&lt;P&gt;&amp;nbsp; end ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.output (dataset: "by_state_"||state);&lt;/P&gt;&lt;P&gt; run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 11 Sep 2013 19:42:43 GMT</pubDate>
    <dc:creator>art297</dc:creator>
    <dc:date>2013-09-11T19:42:43Z</dc:date>
    <item>
      <title>Macro error referencing character variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79104#M17080</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I have the following code&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE1=AL; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE2=AK; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE3=AZ; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE4=AR; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE5=CA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE6=CO; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE7=CT;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE8=DE; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE9=DC; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE10=FL; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE11=GA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE12=HI; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE13=ID; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE14=IL;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE15=IN; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE16=IA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE17=KS; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE18=KY; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE19=LA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE20=ME; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE21=MD;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE22=MA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE23=MI; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE24=MN; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE25=MS; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE26=MO; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE27=MT; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE28=NE;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE29=NV; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE30=NH; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE31=NJ; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE32=NM; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE33=NY; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE34=NC; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE35=ND;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE36=OH; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE37=OK; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE38=OR; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE39=PA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE40=RI; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE41=SC; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE42=SD;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE43=TN; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE44=TX; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE45=UT; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE46=VT; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE47=VA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE48=WA; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE49=WV;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt;STATE50=WI; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; STATE51=WY;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; YEAR1=2010; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; YEAR2=2011; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; font-size: 10pt; font-family: Courier New;"&gt;%let&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New;"&gt; YEAR3=2013;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Macro Keep;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%do i = 1 %to 1; &lt;/P&gt;&lt;P&gt;%do j = 3 %to 3;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data by_state_&amp;amp;&amp;amp;i.;&lt;/P&gt;&lt;P&gt;set data_2012;&lt;/P&gt;&lt;P&gt;where state=&amp;amp;i;&lt;/P&gt;&lt;P&gt; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%Mend Keep;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Keep;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have database with data for each state and I am trying to do calculations by state. However when I run the code above - I tried having the &amp;amp;I in "" and with and without the dot after it (&amp;amp;I and &amp;amp;I.), but I either get this error message "ERROR: WHERE clause operator requires compatible variables." or the data doesn't gets picked up because lets say for example the %do i = 1 %to 1;&amp;nbsp; doesn't pick up that I am looking for state AL but refers it as to 1&lt;/P&gt;&lt;P&gt; i&lt;SPAN style="font-family: 'SAS Monospace'; font-size: 8pt; mso-bidi-font-family: 'SAS Monospace';"&gt;MPRINT(KEEP):&amp;nbsp;&amp;nbsp; data by_state_1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; i&lt;SPAN style="font-family: 'SAS Monospace'; font-size: 8pt; mso-bidi-font-family: 'SAS Monospace';"&gt;MPRINT(KEEP):&amp;nbsp;&amp;nbsp; set data_2012;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; i&lt;SPAN style="font-family: 'SAS Monospace'; font-size: 8pt; mso-bidi-font-family: 'SAS Monospace';"&gt;MPRINT(KEEP):&amp;nbsp;&amp;nbsp; where state="1";&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; i&lt;SPAN style="line-height: 115%; font-family: 'SAS Monospace'; font-size: 8pt; mso-bidi-font-family: 'SAS Monospace';"&gt;MPRINT(KEEP):&amp;nbsp;&amp;nbsp; run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and doesn't find any data . What am I doing wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!!!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2013 16:49:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79104#M17080</guid>
      <dc:creator>letsdoit</dc:creator>
      <dc:date>2013-09-11T16:49:45Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error referencing character variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79105#M17081</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="819840" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;: Not really sure what your data look like or what you are trying to do.&amp;nbsp; Does the following come close?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let STATE1=AL; %let STATE2=AK; %let STATE3=AZ; %let STATE4=AR; %let STATE5=CA; %let STATE6=CO; %let STATE7=CT;&lt;/P&gt;&lt;P&gt;%let STATE8=DE; %let STATE9=DC; %let STATE10=FL; %let STATE11=GA; %let STATE12=HI; %let STATE13=ID; %let STATE14=IL;&lt;/P&gt;&lt;P&gt;%let STATE15=IN; %let STATE16=IA; %let STATE17=KS; %let STATE18=KY; %let STATE19=LA; %let STATE20=ME; %let STATE21=MD;&lt;/P&gt;&lt;P&gt;%let STATE22=MA; %let STATE23=MI; %let STATE24=MN; %let STATE25=MS; %let STATE26=MO; %let STATE27=MT; %let STATE28=NE;&lt;/P&gt;&lt;P&gt;%let STATE29=NV; %let STATE30=NH; %let STATE31=NJ; %let STATE32=NM; %let STATE33=NY; %let STATE34=NC; %let STATE35=ND;&lt;/P&gt;&lt;P&gt;%let STATE36=OH; %let STATE37=OK; %let STATE38=OR; %let STATE39=PA; %let STATE40=RI; %let STATE41=SC; %let STATE42=SD;&lt;/P&gt;&lt;P&gt;%let STATE43=TN; %let STATE44=TX; %let STATE45=UT; %let STATE46=VT; %let STATE47=VA; %let STATE48=WA; %let STATE49=WV;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let STATE50=WI; %let STATE51=WY;&lt;/P&gt;&lt;P&gt;%let YEAR1=2010; %let YEAR2=2011; %let YEAR3=2013;&lt;/P&gt;&lt;P&gt;options mprint mlogic symbolgen;&lt;/P&gt;&lt;P&gt;data data_2012;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input state $ x;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;AL 1&lt;/P&gt;&lt;P&gt;AK 1&lt;/P&gt;&lt;P&gt;AZ 3&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Macro Keep; &lt;/P&gt;&lt;P&gt;%do i = 1 %to 1;&lt;/P&gt;&lt;P&gt;%do j = 3 %to 3;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data by_state_&amp;amp;i.;&lt;/P&gt;&lt;P&gt;set data_2012;&lt;/P&gt;&lt;P&gt;where state="&amp;amp;&amp;amp;state&amp;amp;i";&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%Mend Keep;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Keep;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2013 18:08:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79105#M17081</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2013-09-11T18:08:57Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error referencing character variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79106#M17082</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try the following&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Macro Keep;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%do i = 1 %to 1; &lt;/P&gt;&lt;P&gt;%do j = 3 %to 3;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data by_state_&amp;amp;i.;&lt;/P&gt;&lt;P&gt;set data_2012;&lt;/P&gt;&lt;P&gt;where state="&amp;amp;&amp;amp;STATE&amp;amp;i";&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%Mend Keep;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Keep;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2013 18:10:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79106#M17082</guid>
      <dc:creator>Jakkas</dc:creator>
      <dc:date>2013-09-11T18:10:10Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error referencing character variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79107#M17083</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Also a shorter and cleaner way to create those state macro variables would be&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data Temp;&lt;/P&gt;&lt;P&gt; input ST :$2. @@;&lt;/P&gt;&lt;P&gt; call Symputx("STate"||Left(Put(_n_,12.)),ST);&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;AL AZ OK&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2013 18:20:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79107#M17083</guid>
      <dc:creator>Jakkas</dc:creator>
      <dc:date>2013-09-11T18:20:50Z</dc:date>
    </item>
    <item>
      <title>Re: Macro error referencing character variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79108#M17084</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="819840" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;: Conversely, if &lt;A __default_attr="809989" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt; and I correctly interpreted what you are trying to do, the following would definitely be a lot more generalizable (I think):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data temp (index= (state));&lt;/P&gt;&lt;P&gt;&amp;nbsp; set data_2012;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select catt("'",name,"'")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; into :vars separated by ","&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from dictionary.columns&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where libname="WORK" and&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; memname="DATA_2012"&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dcl hash hh ( ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definekey ('k' ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definedata (&amp;amp;vars.);&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.definedone ();&lt;/P&gt;&lt;P&gt;&amp;nbsp; do k= 1 by 1 until ( last.state ) ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set temp ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; by state ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; hh.add ();&lt;/P&gt;&lt;P&gt;&amp;nbsp; end ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; hh.output (dataset: "by_state_"||state);&lt;/P&gt;&lt;P&gt; run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2013 19:42:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Macro-error-referencing-character-variable/m-p/79108#M17084</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2013-09-11T19:42:43Z</dc:date>
    </item>
  </channel>
</rss>

