I even tried:
...
ws.add_row field.to_s
...
And it still gets converted in the XML to "infinity" in a Value field:
...
<c r="K2" s="0" t="n"><v>Infinity</v></c>
...
This is what is causing Excel to say the file needs repair, I think. It repairs fine, but then of course this value is not there.
The only thing I have found to work is adding more string data to the cell:
ws.add_row "#{field} "
What else can I do to stop this conversion?