データセットに特定の変数が含まれているかどうかをチェックする方法はありますか。
VNAMEX関数を使用してチェックできます。
VNAMEX関数の書式は下記のとおりです。
VNAMEX(変数名)
VNAMEX関数は、引数に指定した変数が存在する場合は変数名を返し、存在しない場合はブランクを返します。
下記に使用例を示します。
/* サンプルデータ */
DATA test;
var1 = 1;
RUN;
%MACRO test(dsname,varname);
/* マクロ変数 c1 を 0 に設定 */
%LET c1=0;
DATA _NULL_;
SET &dsname;
/* 指定した変数があればマクロ変数c1に1を格納 */
IF VNAMEX("&varname") = '' then
PUT "&varname は存在しません。";
ELSE DO;
PUT "&varname は存在します。";
CALL SYMPUT('c1',1);
END;
RUN;
/* マクロ変数 c1 が 1ならPRINTプロシジャを実行 */
%IF &c1=1 %THEN %DO;
PROC PRINT DATA=&dsname;
RUN;
%END;
%MEND;
%test(test,var1)
%test(test,var2)
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
コミュニティの基本的なガイドラインについてご説明します。まずは、こちらをご参照ください。
SAS Support CommunitiesのFAQはヘルプに記載されています。参照方法は、こちらからご確認ください。
Japan SAS Discussionページに質問や意見(メッセージ)を投稿/返信する方法を簡単にご説明します。