This is not fully tested, but it seems to be returning random results within the "letter range" of the input cell.
=INDEX($B$4:B23,MATCH(D3,$A$4:A23,0)+RANDBETWEEN(1,COUNTIF($A$4:A23,D3))-1,1)
Edit: I'e uploaded a revised workbook using conditional formatting to give a visual reference that that random value is, in fact, among those in the "letter range". Looks like the formula is working as you need. However, you do have some duplicate values appear in the different ranges.
After making an entry in the input cell, press the F9 key to force a recalculation which will cause the random number to refresh, thus "cycling" through the possible values to return.
Bookmarks