diff --git a/Elwig/Helpers/Export/Ods.cs b/Elwig/Helpers/Export/Ods.cs
index be056b1..f50cc41 100644
--- a/Elwig/Helpers/Export/Ods.cs
+++ b/Elwig/Helpers/Export/Ods.cs
@@ -107,10 +107,20 @@ namespace Elwig.Helpers.Export {
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -253,9 +263,14 @@ namespace Elwig.Helpers.Export {
data is short || data is ushort || data is int || data is uint || data is long || data is ulong) {
double v = double.Parse(data?.ToString() ?? "0");
- if (isPercent) {
- data = $"{v:N1}";
- add = string.Join(" ", add.Split(" ").Select(p => p.StartsWith("table:style-name=") ? "table:style-name=\"perc\"" : p));
+ if (units != null && units.Length > 0) {
+ int n = -1;
+ switch (units[0]) {
+ case "%": n = 1; data = $"{v:N1}"; break;
+ case "°KMW": n = 1; data = $"{v:N1}"; break;
+ case "°Oe": n = 0; data = $"{v:N0}"; break;
+ }
+ if (n >= 0) add = string.Join(" ", add.Split(" ").Select(p => p.StartsWith("table:style-name=") ? $"table:style-name=\"N{n}\"" : p));
}
c = $"<{ct} office:value-type=\"float\" calcext:value-type=\"float\" office:value=\"{v.ToString()?.Replace(",", ".")}\"{add}>{data}{ct}>";
} else {