<?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: Iterative Macro Variable code in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148821#M29392</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's one way - create your empty table.&amp;nbsp; Then using call execute generate each insert - note the yyymm is just a number so you could format it, and I have just used sashelp.cars, so you could re-work that for your data specifically):&lt;/P&gt;&lt;P&gt;proc sql;&lt;BR /&gt;&amp;nbsp; create table NACO &lt;BR /&gt;&amp;nbsp; (&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MNTH num,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CNT num&lt;BR /&gt;&amp;nbsp; );&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;data _null_;&lt;BR /&gt;&amp;nbsp; do i=201302 to 201402;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('proc sql;&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; insert into NACO&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; set MNTH='||strip(put(i,best.))||',&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CNT=(select count(1) from sashelp.cars);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Note change this to - from NACO_'||strip(put(I,best.)||') - for your datasets */&lt;BR /&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;&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;&amp;nbsp; quit;');&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 19 Mar 2014 16:19:58 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2014-03-19T16:19:58Z</dc:date>
    <item>
      <title>Iterative Macro Variable code</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148819#M29390</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;libname NACO 'sas/data/reference';&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%macro NACO (ext=);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc Sql;&lt;/P&gt;&lt;P&gt;Create Table naco as select&lt;/P&gt;&lt;P&gt;Select count(*) from naco.NAco_ext.;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Mend NACO;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%NACO (ext=201302);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to be able to replace the ext =201302 with multiple months from 201302 to 201402 and put results into one table.. Basically, end result is one table with record counts from a year's worth of monthly tables.&lt;/P&gt;&lt;P&gt;Can anyone help?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Mar 2014 15:43:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148819#M29390</guid>
      <dc:creator>Aljay</dc:creator>
      <dc:date>2014-03-19T15:43:29Z</dc:date>
    </item>
    <item>
      <title>Re: Iterative Macro Variable code</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148820#M29391</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you are missing an &amp;amp;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l&lt;/P&gt;&lt;P&gt;ibname NACO 'sas/data/reference';&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%macro NACO (ext=);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc Sql;&lt;/P&gt;&lt;P&gt;Create Table naco as select&lt;/P&gt;&lt;P&gt;Select count(*) from naco.NAco_&amp;amp;ext.;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%Mend NACO;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%NACO (ext=201302);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Mar 2014 16:19:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148820#M29391</guid>
      <dc:creator>Murray_Court</dc:creator>
      <dc:date>2014-03-19T16:19:49Z</dc:date>
    </item>
    <item>
      <title>Re: Iterative Macro Variable code</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148821#M29392</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's one way - create your empty table.&amp;nbsp; Then using call execute generate each insert - note the yyymm is just a number so you could format it, and I have just used sashelp.cars, so you could re-work that for your data specifically):&lt;/P&gt;&lt;P&gt;proc sql;&lt;BR /&gt;&amp;nbsp; create table NACO &lt;BR /&gt;&amp;nbsp; (&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MNTH num,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CNT num&lt;BR /&gt;&amp;nbsp; );&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;data _null_;&lt;BR /&gt;&amp;nbsp; do i=201302 to 201402;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('proc sql;&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; insert into NACO&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; set MNTH='||strip(put(i,best.))||',&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CNT=(select count(1) from sashelp.cars);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Note change this to - from NACO_'||strip(put(I,best.)||') - for your datasets */&lt;BR /&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;&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;&amp;nbsp; quit;');&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Mar 2014 16:19:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148821#M29392</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-03-19T16:19:58Z</dc:date>
    </item>
    <item>
      <title>Re: Iterative Macro Variable code</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148822#M29393</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Just to add, you can also use call execute to call your macro if you need to:&lt;/P&gt;&lt;P&gt;libname NACO 'sas/data/reference';&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%macro NACO (ext=); &lt;/P&gt;&lt;P&gt;Proc Sql;&lt;/P&gt;&lt;P&gt;Create Table naco as select&lt;/P&gt;&lt;P&gt;Select count(*) from naco.NAco_&amp;amp;ext.;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;%Mend NACO;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;BR /&gt;&amp;nbsp; do i=201302 to 201402;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; call execute('%NACO (ext='||strip(put(I,best.))||');');&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Mar 2014 16:27:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148822#M29393</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-03-19T16:27:42Z</dc:date>
    </item>
    <item>
      <title>Re: Iterative Macro Variable code</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148823#M29394</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You should be querying the Dictionary table for this instead.&lt;/P&gt;&lt;P&gt;Your macro doesn't make sense as well, because it will always replace the table NACO so you'll only have the last iteration.&lt;/P&gt;&lt;P&gt;You can customize the where clause to get info on only the datasets your interested in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table want as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select libname, memname, nobs, nvar, nlobs&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from dictionary.tables&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where libname='NACO' and memname like "NACO_%";&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Mar 2014 16:52:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Iterative-Macro-Variable-code/m-p/148823#M29394</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2014-03-19T16:52:29Z</dc:date>
    </item>
  </channel>
</rss>

