前のページ|次のページ

%SYMEXIST関数

マクロ変数が存在するかどうかを返します。

種類: マクロ関数

構文

%SYMEXIST(macro-variable-name)

必須引数

macro-variable-name

マクロ変数名か、またはマクロ変数名を生成するテキスト式を指定します。

詳細

%SYMEXIST関数は、指定されたマクロ変数を、かっこで囲まれたローカルシンボルテーブルで検索し、次にグローバルシンボルテーブルを検索して、検索結果に応じて次のいずれかの値を返します。
  • 1 マクロ変数が見つかった場合
  • 0 マクロ変数が見つからなかった場合

例: %SYMEXISTマクロ関数の使用

次の例では、%IF %THEN %ELSEマクロステートメントを使用して、%SYMEXIST関数が返す値1および0を、それぞれ値TRUEおよびFALSEに変換しています。
%global x;
%macro test;
    %local y;
        %if %symexist(x) %then %put %nrstr(%symexist(x)) = TRUE;
                         %else %put %nrstr(%symexist(x)) = FALSE;
        %if %symexist(y) %then %put %nrstr(%symexist(y)) = TRUE;
                         %else %put %nrstr(%symexist(y)) = FALSE;
        %if %symexist(z) %then %put %nrstr(%symexist(z)) = TRUE;
                         %else %put %nrstr(%symexist(z)) = FALSE;
%mend test;
%test;
前述のプログラムを実行すると、次の行がSASログに書き込まれます。
%symexist(x) = TRUE %symexist(y) = TRUE %symexist(z) = FALSE
前のページ|次のページ|ページの先頭へ