Is FIND() disallowed in both branches of an IF() or is it a bug

Hi Gurus,
I’m trying to evaluate whether some text contains “MB” or “KB” so I can then convert the numeric portion of the string to a VALUE() with simple /1000 if it’s “KB”.
No matter how I phrase the formula it always returns a #VALUE! error when it would be expected to return the results of the second branch (ELSE).
Is this a bug or a feature?
A simple sample is attached
MultiFIND.ods (10.0 KB)
Thanks in anticipation.

FIND and SEARCH return errors. This is a spreadsheet traditional since 3 decades at least.
Replace FIND(…)>0 with ISNUMBER(FIND(…)

If text is as shown then =IF(E2="KB";LEFT(C2;FIND(" ";C2)-1)/1000;VALUE(LEFT(C2;FIND(" ";C2)-1))) will return a number. You could then add MB to the column heading or format the cells as #.0 "MB" or as many decimal places as desired

I.e., an error is not convertible to a boolean value.