vlookup時の0とエラーの両方に対して代替を行う方法

今まで知らなかったんですが、vlookupって見つからないとエラーを返すだけだと思ってIFERRORだけしか確認していなかったのですが、
エラーが出るのは検索語が検索範囲から見つからなかった時の返り値だったみたいです。
検索後は範囲内にあるけども、返り値を指定する位置に返すための何かがない場合は0が返るので、その両方に対してIF文で大体の文字列を入れたのが以下です。

=IF(
ISERROR(vlookup(検索語,範囲,位置,True or False)),"該当なし", IF(
vlookup(検索語,範囲,位置,True or False)=0,"なし",vlookup(検索語,範囲,位置,True or False)
)
)

さきほどの
・検索語がみつからないエラーは => 「該当なし」
・検索した返り値が空っぽの場合は => 「なし」

というふうになります。