Maybe you have text in one and numbers in the other? Or, maybe there are trailing spaces?

=VLOOKUP(A1+0,table,column,0) will correct the issue if A1 is text and your table is numbers

=VLOOKUP(A1&"",table,column,0) will correct the issue if A1 is a number and your table is text

=VLOOKUP(A1,TRIM(D1:E3),2,0) will correct for trailing 0's if you're trying to return text (note that this is an array formula and must be confirmed with CTRL+SHIFT+ENTER (doing so correctly will result in Excel putting {}'s around your formula in the formula bar))

And the adjustment =VLOOKUP(A1,TRIM(D1:E3),2,0)+0 still confirmed with CTRL+SHIFT+ENTER will return a number instead of a text value if you're expecting a number...