質問: ### 前提・実現したいこと エクセル関数で次のことを実現したいと思っています。 LIST1 A列には「あいうえ」がはいっています B、C列にはランダムに「abcdefg」などアルファベットの小文字がはいっています LIST2にはLIST1でランダムに並べられていたアルファベットが縦に一意に並べられています。 LIST2のD列にかかれたアルファベットがLIST1のどの行にはいっているかを特定し、その行のLIST1のA列に記載されているあいうえのどれかをLIST2のE列に解として表示させたいというのが実現したいことです。(つまり関数をいれたいのはLIST2のE列) LIST1 | セル番地 | A | B | C | | --- | --- | --- | --- | | 1 | あ | a | d | | 2 | い | b | e | | 3 | う | c | f | | 4 | え | g | h | LIST2 | セル番地 | D | E | | --- | --- | --- | | 5 | a | あ | | 6 | b | い | | 7 | c | う | | 8 | d | あ | | 9 | e | い | | 10 | f | う | | 11 | g | え | | 12 | h | え | ### 試したこと もともとBC列データは同じセルに入っていていままではVLOOKUPのあいまい検索を使用してキー項目と結びつけていたのですがデータが長いものはVLOOKUPではエラーが出ると最近気づいて... 別の方法を探したところINDEX関数とmatch関数を使う方法がよさそうということでいろいろ試し中ですがMATCH関数が使いこなせずおたおたしています。 やったことは... E5セルに入れる式として =INDEX($A$1:$C$4,MATCH(D5,$A1:$C$4,0),MATCH(D5,$A1:$C$4,0),1) =エラー MATCHでリスト内のセル番地を特定したかったのですがたしかに縦横が特定できないわけですからエラーになります...。 そもそもこれらの関数も理解しきっておらずまだいろいろ試し&勉強中ですがもしかしたらいい案がもらえるかもしれないということでとりあえず質問します。 ### 補足情報(FW/ツールのバージョンなど) エクセル2010です
回答: E5セルに入れる関数は =INDEX($A$1:$A$4,SUMPRODUCT(($B$1:$C$4=D6)*ROW($B$1:$C$4))) これでいけました。