回答箱 No.101: DRL/Pで参照列にキーとなる文字のないページのエラーを回避したい

  ◆ 質問箱 No.101  質問者:  西村  重幸   1999年09月 212号 P12
      ◆  質問箱目次へ
No.101-1   DRL/Pで参照列にキーとなる文字のないページのエラーを回避したい 回答者
  早瀬  壮一
1999年10月
213号 P29
   ◆ No.101(1999年 9月号)の回答-1

   「押してだめなら引いてみよ」

  The PIPSは、「IUSE」は何回やってもエラーにならないとか、削除する行データがなくても「DR;A;」がエラーなく進むとか、いろいろ融通が利く仕様になっているところもありますが,参照行、参照列のチェックは厳しくされています。

  私は或るバインダーの列をチェックし、項目のない列、或いは100番台の数字のある列を削除する処理をするとき、

    LET X4=CN(";@";);LET X5=CN(";@=1??";);

と列番号を調べ、「0」であれば列がないものと判断する処理をします。

 しかし行の場合はそれが出来ません。
  FOR・・・NEXTで該当行を探り、なければDRL処理をスキップする方法もありますがあまりスマートではありません。

  私はスーパーPIPSの時に特定の文字を1列目に持った行を削除する処理を行ったことがありますが、そのときは予備行を1行持つバインダーにし、削除する処理をする前にその文字を先頭に入れた行を挿入し、「DR;@文字」で削除したことがあります。
  「押してだめなら引いてみよ」のPIPS、「削除するなら挿入しろ」を見つけ嬉しかったものです。

  質問者の事例のように「DRL」で行挿入の余裕がある時は、コマンドを実行する前に「IR」で空白行を「H」に挿入、「LET[H,@N]="1"」などと「DRL;R」の対象にしたいデータを書き込み、DRL処理が終了したらその行とその上に引かれた罫線行(H,H+1)を削除するようにすればよいのではないでしょうか。
戻る