<?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: SAS Date loop Monday to Sunday in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344040#M79031</link>
    <description>&lt;P&gt;Priya,&lt;/P&gt;&lt;P&gt;That should not be so difficult. I assume you want a macro to be called like %do_lines(01JAN2015,31DEC2016) - the parameters being starting date&amp;nbsp;and ending date. I think this will work:&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%macro do_lines(StartDate,EndDate);
  %local Monday Sunday;
  %do Monday=%sysfunc(intnx(WEEK.2,"&amp;amp;StartDate"d,0)) %to %sysfunc(inputn(&amp;amp;EndDate,date9.)) %by 7;
    %let Sunday=%eval(&amp;amp;monday+6);
    %line(%sysfunc(putn(&amp;amp;Monday,DATE9.)),%sysfunc(putn(&amp;amp;Sunday,DATE9.)));
    %end;
%mend;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Søren&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 24 Mar 2017 11:59:15 GMT</pubDate>
    <dc:creator>s_lassen</dc:creator>
    <dc:date>2017-03-24T11:59:15Z</dc:date>
    <item>
      <title>SAS Date loop Monday to Sunday</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344021#M79026</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to know if anyone can help me with a macro loop I am having trouble with&lt;/P&gt;&lt;P&gt;I am trying to run the same macro for the weeks running Monday to Sunday for the past 2 years&lt;/P&gt;&lt;P&gt;/*2015*/&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(29dec2014,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;04&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;05&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;11&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;12&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;18&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;19&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;25&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;jan2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(26feb2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;01&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;02&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;08&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015);&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;09&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;15&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;16&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;22&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;23&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015,&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;29&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;30&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;mar2015,05apr2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(06apr2015,12apr2015);%&lt;STRONG&gt;&lt;I&gt;line&lt;/I&gt;&lt;/STRONG&gt;(13apr2015,19apr2015); &lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am repeating the same lines several times but I am sure&amp;nbsp;I can write a weekly macro loop to give the start and end dates so something that looks like&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%macro new (Start, End);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;.....i=1 to 60&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; j=1 to 60&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %line(&amp;amp;i.,&amp;amp;j.)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%mend;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Priya.&lt;/P&gt;</description>
      <pubDate>Fri, 24 Mar 2017 10:46:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344021#M79026</guid>
      <dc:creator>PriyaL</dc:creator>
      <dc:date>2017-03-24T10:46:29Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Date loop Monday to Sunday</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344034#M79029</link>
      <description>&lt;P&gt;Call it from a data step:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data _null_;
date1 = '29dec2014'd;
do until (date1 &amp;gt; '13apr2015'd);
  call execute('%line('!!put(date1,date9.)!!','!!put(date1+6,date9.)!!');');
  date1 + 7;
end;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 24 Mar 2017 11:37:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344034#M79029</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-03-24T11:37:15Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Date loop Monday to Sunday</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344040#M79031</link>
      <description>&lt;P&gt;Priya,&lt;/P&gt;&lt;P&gt;That should not be so difficult. I assume you want a macro to be called like %do_lines(01JAN2015,31DEC2016) - the parameters being starting date&amp;nbsp;and ending date. I think this will work:&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%macro do_lines(StartDate,EndDate);
  %local Monday Sunday;
  %do Monday=%sysfunc(intnx(WEEK.2,"&amp;amp;StartDate"d,0)) %to %sysfunc(inputn(&amp;amp;EndDate,date9.)) %by 7;
    %let Sunday=%eval(&amp;amp;monday+6);
    %line(%sysfunc(putn(&amp;amp;Monday,DATE9.)),%sysfunc(putn(&amp;amp;Sunday,DATE9.)));
    %end;
%mend;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Søren&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 24 Mar 2017 11:59:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344040#M79031</guid>
      <dc:creator>s_lassen</dc:creator>
      <dc:date>2017-03-24T11:59:15Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Date loop Monday to Sunday</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344113#M79053</link>
      <description>&lt;P&gt;Thankyou - This worked very well.&lt;/P&gt;</description>
      <pubDate>Fri, 24 Mar 2017 16:08:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Date-loop-Monday-to-Sunday/m-p/344113#M79053</guid>
      <dc:creator>PriyaL</dc:creator>
      <dc:date>2017-03-24T16:08:38Z</dc:date>
    </item>
  </channel>
</rss>

