[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『条件付き検索方法』(ケン)
A列に製品のシリアル番号
B列に管理用の番号
C列に任意の製品のシリアル番号を入力する欄
D列でC列の値をA列から検索する関数
E列にD列で見つかったA列の値の隣のB列の値
を表示する関数を作りたいのですが
【A列】 【B列】 【C列】 【D列】 【E列】
MA0123 HP-001 S:MA0128:D NG NG
MA0124 HP-002 S:MA0129:D NG NG
MA0125 HP-003 S:MA0131:D NG NG
MA0126 HP-004 S:MA0123:D MA0123 HP-001
と検索結果がなるような表でまとめたいのですが
VlookUPでは不可能なのでしょうか?
※C列には"-"や":"が含まれた状態で入力するので
A列のデータが含まれた文字列を検索する必要があります。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
A列の文字数は6ケタ固定ですか?
C列は必ずS:と:Dで挟まれるのですか?
上だけの条件であれば、 D1=MID(C1,3,6)でよいと思われますが(E列でNGすれば、D列はしなくてもいいと思いますが)
"-"もあるようですが、他にどのような記入方法が有りますか? (稲葉) 2016/02/09(火) 12:40
A列の文字数は6ケタ固定ですか? A列は9ケタの文字数固定です。
C列は必ずS:と:Dで挟まれるのですか?
必ずしもS:と:Dで挟まれることはないです。桁数も30ケタほどあります。 ただし、A列の文字列9ケタが連続でふくまれています。
(ケン) 2016/02/09(火) 12:52
2行目からデータだとして、
D2 =IFERROR(LOOKUP(1,0/FIND($A$2:$A$5,C2),$A$2:$A$5),"NG")
下へコピー
こういうこと? (笑) 2016/02/09(火) 13:06
D1セルに =IFERROR(TEXT(INDEX(A$1:A$100,MATCH(1,INDEX(COUNTIF($C1,"*"&$A$1:$A$100&"*"),0),0)),";;!N!G"),"") と入力して下および右へフィルコピーではどうか?
なお、データが最大100行目までに対応している。
もっとデータがある場合は式中の「$100」部分を大きくしてくれ。
追記 C列の値にA列の値が複数含まれていた場合にはより上にあるものを返す。 (ねむねむ) 2016/02/09(火) 13:10
一応確認。
C列のシリアル番号は何文字目から始まるかは不定、なんだよね? その前提で回答したんだけど。
それとも必ず3文字目から始まってるのかな? (笑) 2016/02/09(火) 13:18
C列のシリアル番号は何文字目から始まるかは不定、なんだよね?
その前提で回答したんだけど。
⇒ご認識の通り、不定です。
(ケン) 2016/02/09(火) 13:36
ご丁寧な返事、痛み入ります。 で、回答の式は試してもらったんですかね? 結果は如何に?
> D2 =IFERROR(LOOKUP(1,0/FIND($A$2:$A$5,C2),$A$2:$A$5),"NG")
↑ はD列の式。E列は普通にVLOOKUPで。
E2 =IF(D2="NG",D2,VLOOKUP(D2,$A$2:$B$5,2,FALSE)) とか E2 =IFERROR(VLOOKUP(D2,$A$2:$B$5,2,FALSE),"NG") E列も、D列の式で済ませるんだったら
D2 =IFERROR(LOOKUP(1,0/FIND($A$2:$A$5,$C2),A$2:A$5),"NG") ~~~ ~~~~~~~ 波線部を変更して右と下にコピー
こんな感じ。 (笑) 2016/02/09(火) 15:04
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.