BookmarkSubscribe
🔒 This topic is locked.

We are no longer accepting replies to this topic. Need further help? Please sign in and ask a new question.

SAS_Tipster
Moderator

SAS Tip: Check if a variable exists in a dataset

Have you ever needed to know if a given variable is in a SAS data set? This macro returns 1 if a variable exists in a data set, and 0 if not.

%macro VarExist(ds, var);
    %local rc dsid result;
    %let dsid = %sysfunc(open(&ds));
 
    %if %sysfunc(varnum(&dsid, &var)) > 0 %then %do;
        %let result = 1;
        %put NOTE: Var &var exists in &ds;
    %end;
    %else %do;
        %let result = 0;
        %put NOTE: Var &var not exists in &ds;
    %end;
 
    %let rc = %sysfunc(close(&dsid));
    &result
%mend VarExist;
 
/* Usage */
%put %VarExist(sashelp.class, name);
%put %VarExist(sashelp.class, aaa);
This tip was originally posted by Adrien Vallee on sasCommunity.org.
Visit a random SAS tip This SAS Tips board is not open for replies or comments, but we welcome your feedback and questions. Have a question or comment about this tip? Start a new topic in one of our discussion boards, and reference this tip topic.
Recommended by SAS
These recommendations are generated using AI from SAS. For personalized recommendations, sign in with your SAS profile.
Discussion stats
  • 0 replies
  • 22612 views
  • 3 likes
  • 1 in conversation