Deprecated : The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
列の検索・行の検索:エクセル練習問題
Home »
エクセル練習問題:目次 »
列の検索・行の検索
更新:2024/8/30;作成:2012/8/9
問題1:B列〜D列に商品の単価リストがあります。このリストからデータを取り出して E列〜I列の販売実績の商品名と販売金額を埋めなさい。 問題1の解答
販売金額は 販売数×単価 で求めることとします。
B
C
D
E
F
G
H
I
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
販売金額
4
果物-01
りんご
180
果物-02
10
5
果物-02
みかん
130
果物-01
10
6
果物-03
バナナ
140
果物-03
10
問題2:B列〜D列に商品の単価リストがあります。このリストからデータを取り出して E列〜H列の販売実績の商品名と販売金額を埋めなさい。 問題2の解答
販売金額は 販売数×単価 で求めることとします。
B
C
D
E
F
G
H
I
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
販売金額
4
野菜-01
大根
150
野菜-03
20
5
野菜-02
白菜
120
果物-02
15
6
野菜-03
ピーマン
50
果物-01
18
7
果物-01
りんご
180
野菜-02
21
8
果物-02
みかん
130
9
果物-03
バナナ
140
問題3:問題1と同じ「商品の単価リスト」があります。このリストからF列のコードを求めなさい。 問題3の解答
B
C
D
E
F
G
H
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
4
野菜-01
大根
150
ピーマン
20
5
野菜-02
白菜
120
みかん
15
6
野菜-03
ピーマン
50
大根
18
7
果物-01
りんご
180
バナナ
21
8
果物-02
みかん
130
9
果物-03
バナナ
140
問題4:F列〜J列に判定基準の表があります。この基準でD列に得点の判定をしなさい。 問題4の解答
判定基準は0以上40未満は「不可」、40以上60未満は「可」、60以上80未満は「良」、80以上は「優」を意味します。
D列の得点を判定をしなさい。
B
C
D
E
F
G
H
I
J
2
名前
得点
判定
判定基準
3
相沢一郎
52
得点(以上)
0
40
60
80
4
井上浩二
74
判定
不可
可
良
優
5
上野有紀
84
6
内野武
32
7
上田祥子
68
8
江田早苗
59
9
榎本高貴
80
10
小田和樹
60
解答
この問題のポイントは商品単価リストのコードが昇順に並んでいるところです。
B
C
D
E
F
G
H
I
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
販売金額
4
果物-01
りんご
180
果物-02
みかん
10
1,300
5
果物-02
みかん
130
果物-01
りんご
10
1,800
6
果物-03
バナナ
140
果物-03
バナナ
10
1,400
Excel for Microsoft365,Excel2021ではXLOOKUP関数やスピルの機能が使えるようになりました。
G4セルには =XLOOKUP( F4:F6 , B4:B6 , C4:C6 )
I4セルには =XLOOKUP( F4:F6 , B4:B6 , D4:D6 ) *H4:H6
と入力します。
検索される列が左端列にあるので、VLOOKUP関数は使うことができます。
商品単価リストの検索するコードは昇順に並んでいるので、引数の検索の型を省略することができます。 (または TRUE とします)
VLOOKUP関数の構文:=VLOOKUP(検索値,範囲,列番号,[検索の型])
詳しい説明は VLOOKUP関数 を参照してください。
商品の単価リストのコードは昇順に並んでいます ので、検索の型は省略できます。
G4セルは =VLOOKUP(F4,$B$4:$D$6,2) としました。
I4セルは =VLOOKUP(F4,$B$4:$D$6,3)*H4 で単価を取り出して販売数を乗じます。
G4セルでVLOOKUP関数の引数ダイアログボックスを使う場合は、検索値に F4 、範囲に $B$4:$D$6 、列番号に 2 と入力します。
I4セルでは =VLOOKUP(F4,$B$4:$D$6,3 )*H4 と列番号を 3 にし、販売数を *H4 と掛けます。
INDEX関数を使うことができます。行位置を調べるのにMATCH関数を合わせて使います。
構文:=INDEX(範囲,行番号,[列番号],[領域番号])
INDEX関数 に説明がありますので参照してください。
構文:=MATCH(検査値,検査範囲,[照合の型])
MATCH関数 に説明がありますので参照してください。
商品の単価リストのコードは昇順に並んでいますので、MATCH関数の照合の型は省略できます。
G4セルは =INDEX($C$4:$C$6, MATCH(F4,$B$4:$B$6) ) としました。
I4セルは =INDEX($D$4:$D$6, MATCH(F4,$B$4:$B$6) )*H4 で単価を取り出して販売数を乗じます。
商品単価リストのコードが昇順に並んでいるので、LOOKUP関数を使うことができます。
=LOOKUP(検査値,検査範囲,対応範囲) [ベクトル形式]
=LOOKUP(検査値,配列) [配列形式]
詳しい説明は LOOKUP関数 を参照してください。
LOOKUP関数のベクトル形式で数式を作成すると
G4セルは =LOOKUP( F4 , $B$4:$B$6 , $C$4:$C$6 ) としました。
I4セルは =LOOKUP( F4 , $B$4:$B$6 , $D$4:$D$6 )*H4 としました。
LOOKUP関数の配列形式で数式を作成すると
G4セルは =LOOKUP(F4,$B$4:$C$6) としました。
I4セルは =LOOKUP(F4,$B$4:$D$6)*H4 としました。
解答
この問題のポイントは商品単価リストのコードが昇順に並んでいないところです。
B
C
D
E
F
G
H
I
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
販売金額
4
野菜-01
大根
150
野菜-03
ピーマン
20
1,000
5
野菜-02
白菜
120
果物-02
みかん
15
1,950
6
野菜-03
ピーマン
50
果物-01
りんご
18
3,240
7
果物-01
りんご
180
野菜-02
白菜
21
2,520
8
果物-02
みかん
130
9
果物-03
バナナ
140
Excel for Microsoft365、Excel2021ではXLOOKUP関数やスピルの機能が使えるようになりました。
XLOOKUP関数の使い方は XLOOKUP関数で範囲や配列を検索する をご覧ください。
XLOOKUP関数は完全一致で検索しますので、リストが昇順に並んでいなくても検索ができます。
G4セルには =XLOOKUP( F4:F7 , B4:B9 , C4:C9 ) と入力します。
I4セルには =XLOOKUP( F4:F7 , B4:B9 , D4:D9 )*H4:H7 と入力します。
商品単価リストのコードが昇順に並んでいませんので、LOOKUP関数は使えません。 検索される列が左端列にあるので、VLOOKUP関数は使うことができます。 VLOOKUP関数の構文:=VLOOKUP(検索値,範囲,列番号,[検索の型])
詳しい説明は VLOOKUP関数 を参照してください。 商品単価リストの検索するコードは昇順に並んでいないので、引数の検索の型をFALSE と指定する必要があります 。(または 0 とします)
G4セルは =VLOOKUP( F4 , $B$4:$D$9 , 2 ,FALSE) としました。
I4セルは =VLOOKUP( F4 , $B$4:$D$9 , 3 ,FALSE)*H4 で単価を取り出して販売数を乗じます。
G4セルでVLOOKUP関数の引数ダイアログボックスを使う場合は、検索値に F4 、範囲に $B$4:$D$9 、列番号に 2 、検索方法に
FALSE と入力します。
INDEX関数を使うことができます。行位置を調べるのにMATCH関数を合わせて使います。
構文:=INDEX(範囲,行番号,[列番号],[領域番号])
INDEX関数 に説明がありますので参照してください。
構文:=MATCH(検査値,検査範囲,[照合の型])
MATCH関数 に説明がありますので参照してください。
商品の単価リストのコードは昇順に並んでいないので、MATCH関数の照合の型を 0 と指定する必要があります。
G4セルは =INDEX($C$4:$C$9,MATCH(F4,$B$4:$B$9,0)) としました。
I4セルは =INDEX($D$4:$D$9,MATCH(F4,$B$4:$B$9,0))*H4 で単価を取り出して販売数を乗じます。
解答
B
C
D
E
F
G
H
2
商品単価リスト
販売実績
3
コード
商品名
単価
コード
商品名
販売数
4
野菜-01
大根
150
野菜-03
ピーマン
20
5
野菜-02
白菜
120
果物-02
みかん
15
6
野菜-03
ピーマン
50
野菜-01
大根
18
7
果物-01
りんご
180
果物-03
バナナ
21
8
果物-02
みかん
130
9
果物-03
バナナ
140
Microsoft365ではXLOOKUP関数やスピルの機能が使えるようになりました。
XLOOKUP関数の使い方は XLOOKUP関数で範囲や配列を検索する をご覧ください。
XLOOKUP関数は完全一致で検索しますので、リストが昇順に並んでいなくても検索ができます。
G4セルには =XLOOKUP(G4:G7,C4:C9,B4:B9) と入力します。
商品名をキーに検索することになります。
商品名は昇順に並んでいないので、LOOKUP関数は使用できません。
また、商品単価リストで商品名はコードの右側の列にあるので、VLOOKUP関数は使えません。 INDEX関数を使うことにします。
商品名は昇順に並んでいないので、MATCH関数の照合の型を 0 と指定する必要があります。
F4セルの数式は =INDEX( $B$4:$B$9 , MATCH(G4,$C$4:$C$9,0) ) とします。
OFFSET関数とMATCH関数を組み合わせることもできます。
OFFSET関数の構文:=OFFSET(基準,行数,列数 [,高さ,幅])
詳細な使い方は OFFSET関数 をご覧ください。
OFFSET関数で 基準を B3セルにして、MATCH関数と組み合わせて求めることができます。
F4セルの数式は =OFFSET($B$3, MATCH(G4,$C$4:$C$9,0) ,0) としました。
解答
B
C
D
E
F
G
H
I
J
2
名前
得点
判定
判定基準
3
相沢一郎
52
可
得点(以上)
0
40
60
80
4
井上浩二
74
良
判定
不可
可
良
優
5
上野有紀
84
優
6
内野武
32
不可
7
上田祥子
68
良
8
江田早苗
59
可
9
榎本高貴
80
優
10
小田和樹
60
良
Excel for Microsoft365、Excel2021以降ではXLOOKUP関数やスピルの機能が使えるようになりました。
XLOOKUP関数の使い方は XLOOKUP関数で範囲や配列を検索する をご覧ください。
=XLOOKUP(検索値,検索範囲,戻り範囲, [見つからない場合],[一致モード],[検索モード])
XLOOKUP関数は[一致モード]を-1とすると、完全一致で検索しますが、見つからない場合は、次の小さなアイテムが返されます。
G4セルには =XLOOKUP( C3:C10 , G3:J3 , G4:J4 ,"該当なし",-1) と入力します。
判定基準は上端行にあります。得点をキーとして検索するにはHLOOKUP関数が利用できます。
構文:=HLOOKUP(検索値,範囲,行番号,[検索の型])
HLOOKUP関数 に説明がありますので参照してください。
[検索値]未満の最大値を求めるので、HLOOKUP関数の引数の検索の型は TRUE または省略します。
D3セルの数式は =HLOOKUP(C3,$G$3:$J$4,2) としました。
フィルハンドルをダブルクリックして、下方向へ数式をコピーします。
判定基準の得点の行(G3:J3セル)の値は昇順に並んでいますので、LOOKUP関数を使うことができます。
=LOOKUP(検索値,検索範囲,対応範囲)
LOOKUP関数は[検索値]と一致する値なないときは、[検索値]未満の最大値を検索します。
D3セルの数式は =LOOKUP(C3,$G$3:$J$4) としました。
INDEX関数を使うことができます。列位置を調べるのにMATCH関数を合わせて使います。
構文:=INDEX(範囲,行番号,[列番号],[領域番号])
INDEX関数 に説明がありますので参照してください。
構文:=MATCH(検査値,検査範囲,[照合の型])
MATCH関数 に説明がありますので参照してください。
D3セルの数式は =INDEX( $G$4:$J$4 ,0 ,MATCH(C3,$G$3:$J$3) ) としました。
INDEX関数の引数[行番号」は 0 とし、列番号を MATCH(C3,$G$3:$J$3) で求めています。
スポンサードリンク
Home |エクセル練習問題:目次 |列の検索・行の検索
PageViewCounter
Since2006/2/27