I am having a Strange situation which I was hoping someone could explain why it is occurring. I am trying to use a simple macro variable to count from 1 to 57 in order to import 57 files.
I initially was given files with the name "Simple_toothhistory_1" "Simple.....2" etc.
I used the variable j and had a working macro using "C:\location\Simple_toothhistory_&j..csv"
An issue was found with the files and they were re-converted into csv files with a new name "Prac1_simple_toothhistory" "Prac2_....."
etc.
I tried to use the macro"C:\location\Prac&j_simple_toothhistory..csv"
but with no luck. I also tried adding an additional underscore "C:\location\Prac_&j_simple_toothhistory..csv"
But this also did not work.
I have at this point renamed all 57 files 😞 But I was hoping to understand why it is working at the end but not within the file name!
Thanks!!!
Add a period after the &J -> otherwise the compiler doesn't know where your macro variable name ends, so it won't resolve properly.
ie you see:
"C:\location\Prac&j_simple_toothhistory..csv"
the compiler sees:
"C:\location\Prac&j_simple_toothhistory..csv"
Note the double period before the CSV name. One of those was for the macro variable to resolve properly but you didn't move it with the macro variable.
Correct:
"C:\location\Prac&j._simple_toothhistory.csv"
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.