As already mentioned, I would expect cases of contents in column D occurring more than once in column H. In the words of the example: More than one Species may have the same ITS2 product length given under Size (bp). The LOOKUP() formula as given in the other answer will ten only find the first one of these species, and will repeat the same result if used in a different row with the same Size (bp) value in column D.
In fact you should then want (per row) a result as decribed by the pseudo-SQL statement
SELECT species from MyTable WHERE ITS2 = SizeBP
Spreadsheets aren’t made for this kind of task. Accepting some complications you can do something of the kind. If the mentioned task is assumed to only be a “first approach”, but to grow with time, you should move everything to a database.
How to do such things with limited efficiency and with expectable problems in spreadsheets is demonstrated in the attached example.
ask290231LookupWithProbablyMultipleMatches1.ods
There are altenative solutions, but none without the typical disadvantages of spreadsheets used as “fake databases”.