以降のセクションでマクロ言語のさまざまな要素についてさらに詳細に説明しますが、このセクションでは、一部の機能を紹介し、詳細情報へのリンクを示します。
マクロステートメント
このセクションでは、%MACROや%IF-%THENなど、いくつかのマクロステートメントのみを説明しています。この他にも多くのマクロステートメントが存在します。一部のマクロステートメントはオープンコード内で有効ですが、それ以外はマクロ定義内でのみ有効です。マクロステートメントの完全な一覧については、
マクロステートメント を参照してください。
マクロ関数
マクロ関数とは、マクロ機能によって定義された関数のことです。これらは、1つ以上の引数を処理して結果を生成します。たとえば、%SUBSTR関数は他の文字列から部分文字列を作成し、%UPCASE関数は文字を大文字に変換します。マクロ関数の特殊なカテゴリであるマクロクォーティング関数は、特殊文字がマクロプロセッサによって誤って解釈されないようにするために、それらをマスクします。
2つの特殊なマクロ関数、%SYSFUNCおよび%QSYSFUNCが用意されています。これらは、SAS言語関数や、ユーザーがSAS/TOOLKITを使用して作成した関数へのアクセスを提供します。%SYSFUNCと%QSYSFUNCをBase SASソフトウェアの新しい関数に対して使用して、SASのホスト、ベース、グラフィックなどのオプションの値を取得できます。これらの関数を使用して、SASデータセット、テストデータセットの属性を開いたり閉じたりすることや、外部ファイルの読み込みおよび書き込みを行うこともできます。この他、マクロで浮動小数点演算を実行できる%SYSEVALFという特殊な関数があります。
自動呼び出しマクロ
自動呼び出しマクロは、SASによって定義され、次の共通のタスクを実行するマクロです。
自動マクロ変数
自動マクロ変数は、マクロプロセッサによって作成されるマクロ変数です。たとえば、SYSDATEには、SASが呼び出された日付が格納されます。自動マクロ変数の一覧については、
マクロ言語要素を参照してください。
マクロ機能インターフェイス
マクロ機能インターフェイスは、マクロ機能と次に挙げるSASの他の部分との間の動的な接続を提供します。
たとえば、CALL SYMPUTを使用してDATAステップ内の値に基づいてマクロ変数と作成することや、リモートホストに格納されたマクロ変数の値を%SYSRPUTマクロステートメントを使用して取り出すことができます。これらのインターフェイスの詳細については、
マクロ機能とのインターフェイスを参照してください。