%let filecount=100;      *****************import the image filenames********************************************************;  %macro drive(dir,ext);    %let filrf=mydir;        /* Assigns the fileref of mydir to the directory and opens the directory */    %let rc=%sysfunc(filename(filrf,&dir));    %let did=%sysfunc(dopen(&filrf));        /* Returns the number of members in the directory */    %let memcnt=%sysfunc(dnum(&did));        /* Loops through entire directory */    %do i = 1 %to &memcnt;        /* Returns the extension from each file */    %global file&i.;    %let file&i. = %qsysfunc(dread(&did,&i));    %let name=%qscan(%qsysfunc(dread(&did,&i)),-1,.);        /* Checks to see if file contains an extension */    %if %qupcase(%qsysfunc(dread(&did,&i))) ne %qupcase(&name) %then    %do;    /* Checks to see if the extension matches the parameter value */    /* If condition is true prints the full name to the log */    %if (%superq(ext) ne and %qupcase(&name) = %qupcase(&ext)) or    (%superq(ext) = and %superq(name) ne) %then    %do;    %put %qsysfunc(dread(&did,&i));    %end;    %end;    %end;        /* Closes the directory */    %let rc=%sysfunc(dclose(&did));  %mend drive;      Here is my code right now. It's making the macro vars variable names and not observations.  %macro newsets();   data outloops;   %do i = 1 %to 100;   files = %substr(&&file&i.,1,10);   %end;   run;   %mend;         %newsets;    
						
					
					... View more