Hello,
I am new to SAS and I was given this macro,
%mend create_libraries;
%create_libraries;
%macro Dt_extract(directory);
proc sql noprint;
select count(*)
into:n_names
from &directory..flname_ann;
quit;
%do z=1 %to &n_names;
data _null_;
a bunch of code
%end;
%mend Dt_extract;
%Dt_extract(temp);
There is data set name flname_ann. Within it is a list of all the names of SAS dataset that I want to go through. So this macro essentially goes through all the dataset, do some modification and towards the end I add in a proc append and end up with a new table with all the modified dataset combined.
Now, within the same folder where I save the flname_ann file, there is another similar dataset with another list of files that I wish to go through. Can someone please explain to me how can I call up the same macro to read this other file, named flname_non?
Thank you very much in advance.
This is untested but it should work.
%macro Dt_extract(directory=,file=);
proc sql noprint;
select count(*)
into:n_names
from &directory..&file.;
quit;
%do z=1 %to &n_names;
data _null_;
a bunch of code
%end;
%mend Dt_extract;
%Dt_extract(directory=temp,file=flname_ann);
%Dt_extract(directory=temp,file=flname_non);
It works perfectly! Thank you very much.
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!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.