Исходно использовалась VarToStr что вообще неприемлемо по скорости, да ещё и зависит от настроек. А в XML только . как DecimalSeparator возможна.
Код:
procedure TXMLSpreadsheetExportEh.AddColumn(ColumnWidth: Integer);
var
fmt: TFormatSettings;
begin
fmt := TFormatSettings.Create;
fmt.DecimalSeparator := '.';
FXMLStream.WriteString(' <Column');
FXMLStream.WriteString(' ss:Width="' + FloatToStr(ColumnWidth * 72 / 96, fmt) + '"');
FXMLStream.WriteString(' ss:AutoFitWidth="0"');
FXMLStream.WriteString('/>');
FXMLStream.WriteString(sLineBreak);
Inc(FColCount);
end;