HTML到Excel更改代码

时间:2016-03-10 19:05:16

标签: asp.net vb.net excel

在asp.net(vb)中,我正在尝试编写HTML输出,我可以让用户在Excel中打开报表。它编写我的文件很好,但是当Excel打开文件时它正在更改HTML代码。它真正改变的部分是公式!

例如,我正在写出以下内容(文件的一部分):

<table>
<tr>
<td>Trial</td><td x:num x:fmla="=SUM(A2:A10)">0</td>
</tr>
</tr></table>

如果我在Excel中打开文件,则单元格的公式为SUM(A13:A21)。

我可以做些什么来阻止Excel在打开时更改它吗?我希望它具有我写的内容,但它正在改变很多!

感谢任何想法。

2 个答案:

答案 0 :(得分:1)

这给了我预期的结果:

<html xmlns:v="urn:schemas-microsoft-com:vml" 
xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:x="urn:schemas-microsoft-com:office:excel" 
xmlns="http://www.w3.org/TR/REC-html40">
<table>
<tr>
<td>Trial</td><td x:num x:fmla="=SUM($A$2:$A$10)">0</td>
</tr>
</tr>
</table>
</html>

即使没有$公式仍然如下:没有调整。 Excel 2013 / Win7

答案 1 :(得分:0)

蒂姆朝着正确的方向前进,所以谢谢。

我发布了我发现的是我的愚蠢错误,只是为了回答这个问题。没有人会做我做的事,但现在就是。

当我编写程序时,我正在为所有内容做一个“table”标记,所以我的HTML看起来像这样:

<table><tr>
<tr>
<td x:num>11</td>
<td x:num>12</td>
<td x:num>13</td>
<td x:num>14</td>
</tr></table>

<table> <tr>
<td x:num>21</td>
<td x:num>22</td>
<td x:num>23</td>
<td x:num>24</td>
</tr></table>

<table> <tr>
<td x:num>31</td>
<td x:num>32</td>
<td x:num>33</td>
<td x:num>34</td>
</tr></table>


<tr>
<td>Total Weight</td>
<td></td>
<td x:num x:fmla="=SUM(D4:D10)">0</td>
</tr>
</table>

显然,这改变了一切。将其更改为顶部的一个“表”和末尾的“/ table”以将其全部修复。

感谢您的帮助!