Hi,
There are several different approaches to do what you want. Both involve a SAS Macro program. The macro program described here (in a previous forum posting) is probably the more straightforward approach than the CALL EXECUTE approach. In either case, you would need to have a working macro program and a study of this program might give you some ideas of how to approach your particular problem:
http://support.sas.com/forums/thread.jspa?messageID=10762⨊
The difference would be that instead of looking for the unique values of the SEX variable from SASHELP.CLASS, you would look for the unique values of the MYDATE variable from your dataset. Then, instead of an ODS CSV step, you would have the DATA step program that would create a properly named dataset for every unique DATE.
Your initial thoughts about approach are almost exactly what this forum posting illustrates. Instead of an array (which is a data step construction) -- the program uses a list of numbered macro variables and instead of a data step DO loop, the program uses a macro program %DO loop.
cynthia