- 締切済み
excelの関数をしえてください。
こんにちは。exceldでの関数で質問です。 使用関数と検索範囲の指定の方法を教えてください。 表は2つあります。 表1は行タイトルがクラス名(A~D)、列タイトルに1~25までの級を表す数字の入った表です。参照表です。 A B C D 1 ○ ◇ ■ △ 2 △ ○ ◇ ■ (内容はすべて違うものです) 3 ■ △ ◇ ○ 4 5 表2は関数を利用して表1より該当するセルの内容を 表示したいのです。 表2 A列にクラス(A~D 表1と同じ項目) B列に級 C列に数値 D列に前年度数値 クラス 級 数値 前数値 A 2 △ △ C 5 ○ ○ B 1 D 3 C列にはD列の前数値の近似値を表1より参照したいのです。その際にクラスわけからAであれば表1の Aクラスの列から近似値をさがしたいのです。 B列にはC列で求めた近似値が表1でどの級かを 求めたいのです。 表2のクラスわけがランダムなのと、 検索範囲がクラスによって異なる箇所となるので 検索範囲の指定の方法、さらにはどの関数を 使用して行えばよいのかわかりません。 説明がわかりづらいかと思いますが、 宜しくお願いします。 OS:NT4.0 excel2000 を使用しています。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- maruru01
- ベストアンサー率51% (1179/2272)
表1がSheet1にあるとします。 (クラスがB1~E1、級がA2~A26とします。) 表2のC2を選択して、数式バーに、 =MAX(IF(OFFSET(Sheet1!$A$1,1,MATCH(A2,Sheet1!$B$1:$E$1,0),COUNTA(Sheet1!$A$2:$A$26),1)<=D2,OFFSET(Sheet1!$A$1,1,MATCH(A2,Sheet1!$B$1:$E$1,0),COUNTA(Sheet1!$A$2:$A$26),1),0)) と入力して、まだ数式バーにカーソルがある状態で、[Ctrl]と[Shift]を押しながら[Enter]を押します。 (数式の両端に「{}」が付いて配列数式になります。) そうしたらこれを下の行へコピーします。
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 とりあえず、よくわかりません。 質問中の「○」とか「△」は数値なんですよね。 (ダミーでいいから普通の数値にして欲しかったです。) で、表2にはA列のクラス(A、B・・・)と、D列の前数値を手入力して、それをもとに、B列の級とC列の数値を数式で表示するということでしょうか。 また、近似値というのはどういうことでしょうか。 例えば、表1でクラスAの値が 「9、11、14・・・」 の場合、前数値が「13」なら、「14」が近似値ということでしょうか。 では、もし前数値が「10」だったら、近似値は「9」と「11」のどちらになるんでしょうか。 補足をお願いします。
補足
とてもわかりづらくて、すみません。 >表2にはA列のクラス(A、B・・・)と、D列の前数値 を手入力して、それをもとに、B列の級とC列の数値を数式で表示するということでしょうか。 そのとうりです。表1には数値が入力してあり。 表2のA,D列にも手入力してあります。 近似値は「10」の場合ですと「9」になります。 近似値について今回は違うのですが、 「11」を求めたい場合もどうするのか教えて いただけるうれしいです。 すみませんが宜しくお願い致します。