2.文字列取得解説
|
戻る |
悪児の「文字列取得」(以下A)と、
くまぷーさんの「文字取得2」(以下K)の違いは、次の点です。 |
1.範囲指定が、
Kは、Jump()で直接移動
Aは、ジャンプで対象行の行頭に移動後、EndOfLine()とLeftCell()で移動
2.余白削除
Aは、LTrim(RTrim())で、文字列の前後の余白を削除、Kは無し
3.文字列入力で、
Kは、既入力データをDelete(2)で削除してから、新データを入力
Aは、InsertMode(2)で上書きモードにしてから、
新データの末尾に半角の空白を一つ追加して入力。
|
| 違いの理由 |
1.「アルファベットランダム入力」でも書きましたが、
Jump()による直接移動は、特に罫線表においては危険です。
その例を作成しましたので、ご覧下さい→Jump()による誤動作の例
2.くまぷーさんは、忘れただけでしょう。(^^;(^^;)
ただ、データの性質上、ここでは、RTrim()だけでも、OKですね。
3.ワープロですから、当然、挿入・上書きの切替ができ、マクロでも対応しています。
モードの切替は、InsertMode()です。
また、通常は、「挿入」モードで使っている方が多いと思いますが、
念のため、実行時のモードを調べ、終了後、元のモードに戻す、
という配慮は必要でしょう。
なお、この際、if文等を使って、
モードが必要と違う場合だけ切り替えるようにプログラムする方も多いようですが、
元々「上書き」モードになっているところで、
「上書き」モードになるようにしてもエラーになりませんから、
その必要はないと思います。
|