スクリプトガイド > データテーブル > データテーブルのスクリプトの基本 > 開いているすべてのデータテーブルに対するアクションの実行
公開日: 04/01/2021

開いているすべてのデータテーブルに対するアクションの実行

現在開いているデータデーブルすべて(プライベートデータテーブルを除く)に対してアクションを行う場合は、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());
	);

取得したリストを使い、開いているデータテーブルすべての名前をリストボックス(ウィンドウ)に含めれば、ユーザがデータテーブルの操作を行うときに、その中から対象となるデータテーブルを選択することができます。また、リストにあるデータテーブル名をファイルに書き出すこともできます。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).