我正在使用HTML将数据从我的网站导出到excel。
对于货币,我正在使用以下类:
.DDD {
mso-number-format: '\0022$\0022\#\,\#\#0\.00';
}
当我在excel 2007-2010中打开它时,行为正常。(我看到带有货币的数字,但是当我编辑单元格时,您可以看到它是一个数字-因此您可以在其上使用诸如Sum()之类的函数)但是在excel 2013中打开它时,我无法使用函数,并且我看到该单元格的值为“ $ 10.00”(而不是10.00)-因此它不是数字。
我仅在此示例中使用“ $”,实际货币为NIS(“₪”)
有没有办法使它对所有优秀者都有效?
我相关的HTML是:
<table>
<tr>
<td class="DDD">
<span>$</span>
<span>1234.56</span>
</td>
<tr>
</table>
最终,我删除了货币跨度,并且在所有excel上都可以正常工作。
你能给HTML
这个看一下CSS
吗?
因为如果我有:
<meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">
<style>
.DDD {
mso-number-format:"\0022₪\0022\#,\#\#0\.00";
}
</style>
<table>
<tr>
<td class="DDD">1234.56</td>
<tr>
</table>
那么Excel看起来像:
在Excel 2016中。这是德语Excel。因此1234,56是一个数字。
我认为Excel 2013与此并没有太大不同。
如果还需要在浏览器视图中使用该格式,那么您可以:
<meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">
<style>
.DDD {
mso-number-format: "\0022₪\0022#,##0.00";
font-size: 2em;
}
.DDD::before {
content: "₪";
}
.DDD .thousand::before {
content: ",";
}
</style>
<table>
<tr>
<td class="DDD">1<span class="thousand">234</span>.56</td>
<tr>
</table>
但是更好的方法是将视图要求与数据导出要求严格分开。因此具有不同的视图和数据导出格式。总之,考虑到所有因素,不要直接使用HTML进行数据导出,而最好使用XML或更好的格式(在这种情况下为Excel)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句