Hi everyone!
I am trying to copy and rename a bunch of files on my computer and thought X commands is the way to go. I tried it and it worked perfectly however when I put in a Macro to do this it does not work. it just saves the first file with the name stated and does not replace the "&name" with name given. Here is what I have written so far:
%FAST(2017,Carry,05T);
%macro FAST(YEAR,SURVEY,MO);
X "copy ""C:\TestSASCode\&YEAR\&SURVEY\&MO\test.DAT"" ""C:\TestSASCode\SAS\&SURVEY_&YEAR_&MO_2017-carrier.DAT"" ";
%mend;
%FAST(2017,Carry,01T);
%FAST(2017,Carry,02T);
%FAST(2017,Carry,03T);
I know it looks like I do not need the &Year and &survey because they are the same however I will be doing this for different year and surveys too. I just wanted the question to be simple.
What do you guys think I should do?
Thank you!
Add periods after the macro variables.
If you run the code with the following the log will have more information that helps with debugging.
options mprint symbolgen;
&SURVEY._&YEAR._&MO.
Add periods after the macro variables.
If you run the code with the following the log will have more information that helps with debugging.
options mprint symbolgen;
&SURVEY._&YEAR._&MO.
Thank you so much! I cannot believe I overlooked that.
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.