2009年8月15日土曜日

第125回目 計算式作成のお手伝い(その4、余興的にlookup関数)

第125回目 計算式作成のお手伝い(その4、余興的にlookup関数)

 lookup関数をつくるというのは、ほとんどこれまでのものを活用すれば可能です。何ら新しいものはありません。
 ちょっと時間があったので余興的につくってみました。
 
 lookup関数の記述の仕方。
 $AW$5xxx=LOOKUP(AX5,$BG$5:$BG$43,$BH$5:$BH$43)

 座標を参照する範囲は、同一ファイル内としました。
 必要な座標は、計算式を入れるセル、検査値(例えば、商品コード)のセル、一覧表におけるコード値の範囲、一覧表における参照値(例えば、商品コードに対応する金額)の範囲の四項目です。このうち範囲を持つのが、三番目と四番目ですが、数が同じなので四番目は先頭のセルのみでいいことになります。
 指定の順番はこのとおりとしますが、最初の計算式を入れるセルにカーソルを置いた段階でマクロを実行しますので、マクロの中では三つ指定することとなります。
 座標について考えると、第一項目と第二項目、第三項目と第四項目は、同じ行である可能性が高いですね。同じ対応でみると、同一シートである可能性も高いですね。
 処理の流れ
 1.セルの座標を取得します。このセルは計算式を入れる場所ですので、シート名も取っておきます。
 2.次の項目のシートを指定し、シートを移動します。
 3.次の項目のセルを指定し、その座標を取得します。
 2と3を三回繰り返します。二回目の場合は範囲の指定となります。他は一つのセルの指定だけです。この際、Application.InputBoxにおいて、セルの初期値をうまく設定する必要があります。
 4.必要回数の指定が終わったら、計算式をつくります。
 第二項目は相対参照形式にし、第三項目と第四項目は絶対参照形式にします。
 5.計算式から、計算式のあるセルと同じシート名を取り除きます。
 6.計算式を貼付けるシートに移動し、セルを指定し、計算式を貼付けます。エラーの場合があるため、最初は文字計算式で貼付けてみてください。

0 件のコメント: