一致する行を探すのはMATCH関数を
セル範囲にある値のセル参照を返すのはINDEX関数を
最終的に位置を取得するのはCELL関数を利用します。
MATCH($A4,$I$4:$I$3000,0)
A4には一致して欲しい値のセル
I4:I3000には検索して欲しい範囲を指定して
0のものは完全一致のことを指しています。
INDEX($I$4:$I$3000,MATCH($A4,$I$4:$I$3000,0))
INDEXのI4:I3000は検索する範囲の指定なので、
MATCH関数と同範囲にします。
最終的にはこのような感じですね。
CELL("address",INDEX($I$4:$I$3000,MATCH($A4,$I$4:$I$3000,0)))
CELL("address",INDEX(検索範囲,MATCH(一致対象,検索範囲,一致タイプ)))
そこで、探した結果の横の文字を表示してリンクを付ける内容は下記のものになります。
A2にはシート名が記載されています。
=HYPERLINK("#"&$A$2&"!"&CELL("address",INDEX($I$4:$I$3000,MATCH($A5,$I$4:$I$3000,0))), VLOOKUP($A5,$I$4:$J$3000, 2, FALSE))