質問: エクセルのvlookupについて 例えば下のような表があったとします、 a列の中から指定した文字列があった場合、全てを c列の文字列を50音順に表示させたいのですが良い方法ありますでしょうか? 説明が下手ですみません^^;
回答: 非常によく寄せられるご相談の一種ですが、エクセルには「該当する結果を一覧で並べる関数」というものは一つもありません。 vlookup関数を使っても出来ますが、そのためにはvlookupの検索にヒットする「一意の検索値」を別に準備しなければなりません。 ところで >50音順に表示させたい これが文字通りの意味であった場合は、もっとシチメンドクサイ事をしなきゃならなくなりますが、とりあえず今回はまず手始めとして「c列は既に五十音順で並べ替え済みなので、上から順番に取ってくればそれで良い」事にします。 添付図: a列に空列を挿入、検索キーとして次のように作成する a2: =if(b2="","",b2&"-"&countif($b$2:b2,b2)) 以下コピー g1に検索値を記入 f2には =if(row(f1)>countif(b:b,$g$1),"",row(f1)) 以下コピー g2には =if(f2="","",vlookup($g$1&"-"&f2,a:d,4,false)) 以下コピー。