BookmarkSubscribeRSS Feed

Macro Do Loop Continue or Leave

Started ‎07-05-2018 by
Modified ‎07-05-2018 by
Views 12,538

This example shows data step and macro examples of the loop exit verbs:

  • continue: skip to 'end;' statement, where iteration happens
  • leave: exit loop
DATA _Null_;
do I = 1 to 3;
   put I= 'pre-test';
   if  I le 2 then continue;
   put I= 'post test';
   end;
put 'done continue: ' I= ;
 
do J = 1 to 3;
   put J= 'pre-test';
   if  J gt 2 then leave;
   put J= 'post test';
   end;
put 'done leave: ' J= ;
stop; run;
 
%Macro Do_Tests(i=,j=);
%do I = 1 %to 3;
   %put I=&I. pre-test;
   %if  &I le 2 %then %goto continue;
   %put I=&I. post test;
   %continue:
   %end;
%put done continue: I=&I. ;
 
%do J = 1 %to 3;
   %put J=&J. pre-test;
   %if  &J. gt 2 %then %goto leave;
   %put J=&J. post test;
   %end;
%leave:
%put done leave: J=&J. ;
%Mend;
%Do_Tests

 

This was originally posted by Ron Fehd on sasCommunity.org

Contributors
Version history
Last update:
‎07-05-2018 05:02 PM
Updated by:

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

SAS AI and Machine Learning Courses

The rapid growth of AI technologies is driving an AI skills gap and demand for AI talent. Ready to grow your AI literacy? SAS offers free ways to get started for beginners, business leaders, and analytics professionals of all skill levels. Your future self will thank you.

Get started

Article Labels
Article Tags