moon_stick wrote:
I'm assuming the easier way to go is to figure out why the numbers are occasionally stored as floating point in text - can anyone shed any light?
Because $2 divided by three people equals something that's hard to store in binary. It results in 0.666666~, where the length of a byte is limited. A digital representation of a analogue value :) Excell sometimes keeps the "calculated" values without rounding them. Those values are already imprecise, since you can't encode every fraction using a byte. It keeps the unrounded value around, and displays a value with the specified formatting: in this case, a currency with two positions after the decimal-separator. It would be easier to test whether the data can be interpreted as a numeric, and if so, round it by two decimals. Keep in mind that you don't want to use these (formatted) numbers for further calculations; you'd want the original floats for that :)
I are Troll :suss: