代入文

代入文は一般的に次のような構文をしています。

LHS = expression ;

expression (RHS, 右辺) はLHSに代入されます。 LHS が存在しない場合、可能なら作成され、不可ならエラーが返されます。

宣言なしの代入文により新しいデータオブジェクトを作成する場合

オブジェクトの種類 説明
文字列変数 LHS$で終わり、右辺は文字列 name$=page.name$; fpath$=%Y;
数値変数 LHS$で終わらず、右辺はスカラー min=0.5; max=min+100; size=wks.nrows;
データセット変数 LHS$で終わらず、右辺の式は範囲 ds1=col(A); ds2={1.2, 3.4, 5.6}; ds3=ds2;
未保存の文字列レジスタ LHS は%で始まり、システム変数として予約されていない1文字を使用  %A = "Hello World";

新しい値が現存のデータオブジェクトに割り当てられた場合は、以下の規則に従います。

LHS RHS 説明
データセット/範囲変数 スカラー式 LHS データセット中の全ての値はexpression に設定
col(A)=3; //col(A)の値全てを3に設定
Book1_B=100; //Book1のB列の値全てを100に設定
データセット/範囲変数 データセット/範囲式 RHS式の各値をLHS変数の対応する値に割り当て
col(C) = col(B)*2.5; //列Bに2.5をかけ、列Cに割り当て
数値変数 データセット/範囲変数または式 データセット/範囲の最初の値をLHS変数に割り当て
ds1={1.2, 3.4, 5.6}; //データセットを作成
begin=ds1; //ds1の最初の値をbeginに割り当て
文字列変数 RHS は" "がなくても文字列式と見なされる
name$=Amplitude; //name$ に "Amplitude"を割り当て
fn$=system.path.program$ + "Samples\Spectroscopy\HiddenPeaks.dat";
object.property オブジェクトの数値または文字列プロパティを設定
wks.ncols=5; //ワークシートの列数を5に設定
wks.name$=MyInput; //現在のシート名を"MyInput"に設定
Book1!wks.rhw=100; doc -uw; //行ヘッダの高さを100に設定してリフレッシュ
未保存の文字列レジスタ 文字列式 式を評価して文字列レジスタに代入
%A = "%YTest.opju" //%Y と Test.opju を連結し、%A に割り当て 


Note: 代入演算子の左側の文字列レジスタが括弧で囲まれている場合、文字列レジスタは代入の前に置換処理されます。例

ds={1.2, 2.3, 3.4};
%B=ds;
(ds)=2*%B; //dsに2をかけてdsに戻す。'''%B'''は文字列"ds"を保持
type $(ds); //新しいdsの値2.4 4.6 6.8を出力