hmmmmm interesting questions.
> 1. What is an in-line macro?
Are you perhaps referring to either a statement style or command line macro?
> 2. How to swap 2 macro variables without creating 3rd
> macro variable?
I have never needed to do this is there a specific motivation? The use of a third temporary variable seems like a small cost.
> 3. Suggest a way to enlist tables that have a column
> containing string - ‘asset’?
Sorry I am not sure what you mean. Any data set with a variable with the name ASSET or any data set with any variable which contains a value of 'asset'. I am guessing the second and that you do not want to actually read the potential data sets.
I'm not sure what you mean by #2 and #3 -- this is an instance where a concrete example or more explanation would be useful. Especially, what you mean by the phrase "enlist tables" in the sentence "Suggest a way to enlist tables that have a column containing string - ‘asset’" If you want to find tables that have a column which contains "asset" as part of a column name, then you will want to search for previous forum postings on the use of the SAS Dictionary tables or the SASHELP "V" tables.
And, if this is a homework assignment, then your best resource is your professor or teaching assistant for the class.