Excel с XML-Map экспортирует в XML с недопустимым десятичным разделителем

Я создал лист Excel, сопоставил его со схемой XSD и экспортирую данные в файл XML. Это работает нормально, за исключением того факта, что десятичные значения в файле XML имеют неправильный десятичный разделитель.

Я из Европы, и, как многие знают, в отличие от США, здесь мы используем запятую в качестве десятичного разделителя. Так что при локализации ОС и Excel совершенно автоматически используется запятая.

Но, например, введенное число 7,5 в Excel дает значение 7,5 в XML. Нет возможности повлиять на это. Ни в Excel, ни в функции экспорта, ни в определении XSD. Поскольку в моих региональных настройках должна использоваться запятая, экспорт в Excel, похоже, имеет жестко запрограммированное преобразование.

Я использую PowerBI для обработки файлов XML, и PowerBI ожидает, что в качестве десятичного разделителя используется запятая, а здесь числа полностью запутаны. Десятичный. игнорируется, поэтому 1.7 интерпретируется как 75.

Я надеюсь, что это краткое объяснение.

Excel:  введите описание изображения здесь

XML:  введите описание изображения здесь

Power BI:  введите описание изображения здесь

Совершенно аналогичная проблема очень хорошо объясняется в этом форум Excel, но не получил ответа.

Как я могу это решить?


person Magier    schedule 12.01.2018    source источник


Ответы (1)


Запустите постобработку XML-файла с помощью XSLT. Чтобы форматировать числа с помощью запятой, используйте format-number() с <xsl:decimal-format decimal-separator=","/> или просто translate(xxx, '.', ',')

person Michael Kay    schedule 12.01.2018