プロが教える店舗&オフィスのセキュリティ対策術

やりたいことは

氏名  等級 給与
山田太郎 A1 100,000
山田太郎 B1 120,000

とうような部分があり、等級に「A1」と入れると、自動的に等級表リストを参照して、金額を表示してくれるということです。

等級表は
  
号/級 A B 
1 100,000 110,000 
2 100,500 110,500
3 101,000 111,000

#エクセルのスキルは今まで簡単な関数を使うくらい。
#こういう私でもできる?
#マクロは使わず?にできる方法希望。
#質問のしかたもちょっと自信なし。

A 回答 (5件)

Vlookupでもできますよ。



等級のセルがB1とします。
給与のセルがC1とします。
給与が、
A4 A5 A6
A B
1 100000 110000
2 100500 110500
3 101000 111000
とします。

C1のセルに、以下を設定します。

=VLOOKUP(INT(MID(B1,2,1)),A4:C7,IF(MID(B1,1,1)="A",2,IF(MID(B1,1,1)="B",3)),FALSE)
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

昔、一瞬だけ「Vlookup」は使った記憶があるのですが、最近はエクセル使わないので、おっくうになっています。 (^^;

恥ずかしながら、正月にチャレンジします。

お礼日時:2002/12/09 06:40

ちょっとインチキな方法ですが・・・



等級表
 |  A    B    C
------------------------------
1| 号/級  A    B
2|  1  100,000 110,000
3|  2  100,500 110,500
4|  3  101,000 111,000
のように、入っているならば

 |  A    B   C
------------------------------
1|  氏名  等級 給与
2| 山田太郎 A1 =IF(B2<>"",OFFSET(INDIRECT("等級表!"&B2),1,1),"")
でも出来ると思います。

この方法は、他の方の回答と違い、等級を検索している訳ではなく
単純に等級に入力した「A1」をセルに見立てて、等級表のA1セルから「1つ右1つ下」の値を表示します。
ですから、号がA、B、Dや 級が1、2、4のように連番にならない場合は使えません。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

いろいろな方法がでて、素人には大変な作業?なので正月にチャレンジすることにしました。 (^^;

お礼日時:2002/12/09 06:42

再度登場します。

わたくし質問を読み間違えていたのと、INDEX関数の引数を間違えていました。追加と訂正です。
例えば、セルF1に質問の「A1」とか「B1」とかを入力するとしたら。そして、等級はABCの3つのみ、号は1~99までと仮定すると、

A1セルの数式は =IF(LEFT(F1,1)="A",1,IF(LEFT(F1,1)="B",2,IF(LEFT(F1,1)="C",3,0)))
A2セルの数式は =MID(F1,2,2) または =VALUE(MID(F1,2,2))
A3セルの数式は =INDEX(C1:D3,A2,A1)です。
    • good
    • 0

INDEX関数を利用したらいかがですか。


例えばご質問のテーブルの100,000~111000までの範囲がc1:d3だと仮定します。
A1に号の番号を入力するセルとします。
A2に級の番号を入力するセルとします。(この時級も1・2・3という数値にします)
A3に給与額が算出されるセルとします。

A3に入力する式は =INDEX(C1:D3,A1,A2)です。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

エクセルを触っていないと、何から何までおっくうで・・。
よって、正月休みにチャレンジします。 (^^;

お礼日時:2002/12/09 06:41

等級表の中で級に該当する列を探し、号俸だけ下がった行を返せばいいわけですから、


級 := left(等級,1)
号 := mid(等級,2,2)
として

給与 := hlookup(級, 等級表, 号+1, FALSE)
で出来るでしょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

まだ、とりかかえれずにいますが、正月にでもいろいろ試してみます。

お礼日時:2002/12/09 06:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!