現在開いているデータデーブルすべて(プライベートデータテーブルを除く)に対してアクションを行う場合は、N Table()を使用して各データテーブルへの参照リストを取得できます。
dt1 = Open( "$SAMPLE_DATA/Cities.jmp" );
dt2 = Open( "$SAMPLE_DATA/Big Class.jmp" );
openDTs = List();
For( i = 1, i <= N Table(), i++,
Insert Into( openDTs, Data Table( i ) );
);
これで、openDTsは、開いているすべてのデータテーブルへの参照リストとなります。openDTs[n]を使用すると、任意のデータテーブルにメッセージを送ることができます。開いているデータテーブルすべてにメッセージを送るには、forループを使用できます。次のループでは、各データテーブルにMy Columnという名前の新しい列を追加します。
For( i = 1, i <= N Items( openDTs ), i++,
openDTs[i] << New Column( "My Column" );
);
データテーブルへの参照ではなく、テーブル名のリストだけが必要な場合は、Get Nameメッセージを使用します。
For( i = 1, i <= N Table(), i++,
Insert Into( openDTs, Data Table( i ) << Get Name());
);
取得したリストを使い、開いているデータテーブルすべての名前をリストボックス(ウィンドウ)に含めれば、ユーザがデータテーブルの操作を行うときに、その中から対象となるデータテーブルを選択することができます。また、リストにあるデータテーブル名をファイルに書き出すこともできます。