行列シートの基本操作

このセクションのサンプルは、多くのオブジェクトプロパティとXファンクションがワークシートと行列シートの両方に適用するので、ワークシート基本操作 セクションにあるサンプルに似ています。 wks オブジェクトのすべてのプロパティが行列シートに適用するわけではないので、コード内で使用する前に確認する必要があります。

新しい行列シートを追加する

mat:=1 オプション付きnewsheet Xファンクションは、行列シートを行列ブックに追加するのに使用します。

// 3つの行列シートを持つ新しい行列ブックを作成し
// ロングネームとショートネームに "myMatrix" を使用
newbook name:="myMatrix" sheet:=3 option:=lsname mat:=1;
// 現在の行列ブックに "newMatrix" という名前の100*100のシートを追加
newsheet name:=newMatrix cols:=100 rows:=100 mat:=1;

行列シートをアクティブにする

ワークシートと同様、行列シートは、pageにある内部的なレイヤで、page.active$ プロパティにより行列シートにアクセス可能です。例えば:

// 3つの行列シートをもつ、行列ブックを作成
newbook sheet:=3 mat:=1;
 
page.active = 2;	// レイヤ番号で行列をアクティブにする
page.active$ = MSheet3;	// 名前で行列をアクティブにする

行列シートプロパティを修正する

行列のプロパティを修正するには、wks オブジェクトを使います。これはワークシートと同じように行列シートを動作します。例えば:

// 行列シートの名前の変更
wks.name$ = "New Matrix";
// 列幅の修正
wks.colwidth = 8;

次数/座標値の設定

wks オブジェクトと mdim Xファンクションの両方は、行列の次数をセットするのに使用できます。

// wks オブジェクトを使って次数をセット
wks.ncols = 100;
wks.nrows = 200;
// mdim Xファンクションを使って次数をセット
mdim cols:=100 rows:=100;

同じ行列シートに含まれる複数行列オブジェクトの場合には、すべての行列オブジェクトは同じ次数でなければなりません。

XYマッピングをセットする

行列は、番号が付けられた列と行を持ち、これらは等間隔で線形にマッピングされたX値およびY値です。LabTalkでは、mdim Xファンクションを使ってマッピングをセットできます。

// 行列シートのXYマッピング
mdim cols:=100 rows:=100 x1:=2 x2:=4 y1:=4 y2:=9;


行列シートを削除する

layer -dコマンドにより、行列シートの削除が可能です。例えば:

layer -d;  // アクティブレイヤを削除、ワークシート、行列シート、グラフレイヤにできる
layer -d 3;  // インデックスで、アクティブ行列ブックの3番目の行列シートを削除
layer -d msheet1;  // 名前で行列シートを削除
range rs = [mbook1]msheet3!;
layer -d rs;  // 範囲で行列シートを削除
// 文字列変数に保存された行列ブック名
string str$ = msheet2;
layer -d %(str$);