Looping over a string in SAS

In SAS it is easy to loop a macro between two numbers

%DO I=1 %TO 10;
...
%END;

But if you have a list of non-sequential  numbers or text you want to run your macro over, e.g. a list of towns, it can be a bit trickier. This SUGI paper gives a macro which lets you do just that. A few years ago I looked at that macro and didn't really understand how it worked and not wanting to use code I didn't understand I wrote my own version.

Read More