关于js导出table到excel请看:
纯js实现,导出动态生成的TABLE到EXCEL文件并下载_代码笔记-CSDN博客
修改jquery.table2excel.js让他导出Excel支持css样式_代码笔记-CSDN博客
这里就不再赘述了.....
这里说一下导出带EXCEL函数的Table....
主要代码(<td></td>内就是Excle的公式,65536代表EXCEL的最大行):
<tr>
<td>合计</td>
<td>=SUBTOTAL(9,B4:B65536)</td>
<td>=SUBTOTAL(9,C4:C65536)</td>
<td>=ROUND(C3*100/AP3,2)&"%"</td>
<tr>
备注:
=SUBTOTAL(9,B4:B65536) 是筛选+求和
=ROUND(C3*100/AP3,2)&"%" 求百分率%
完整代码:
<script src="~/Scripts/table2excel/jquery.table2excel_3.js"></script>
<input type="button" id="ExportExcel" class="btnClass" onclick="ExportExcel()" value="导出Excel" />
<table id="table2" border="1">
<thead>
<tr>
<th rowspan="2">公司</th>
<th colspan="3">0-30</th>
</tr>
<tr>
<td>合计</td>
<td>=SUBTOTAL(9,B4:B65536)</td>
<td>=SUBTOTAL(9,C4:C65536)</td>
<td>=ROUND(C3*100/AP3,2)&"%"</td>
</tr>
</thead>
<tbody id="tbody2"></tbody>
</table>
<script>
function ExportExcel() {
$("#tbody2").empty();
$.ajax({
type: "get",
url: "/Controller/Action",
data: {},
dataType: "json",
success: function (request) {
//拼表格
$.each(request.data, function (i, field) {
var html = "";
html += "<tr>";
html += "<td>" + field.公司 + "</td>";
html += "<td>" + field.数量 + "</td>";
html += "<td>" + field.金额 + "</td>";
html += "<td>" + field.占比 + "</td>";
html += "</tr>";
$("#tbody2").append(html);
});
$('#table2').table2excel({
filename: "EXCEL_" + new Date().getTime() + ".xlsx", //导出excel
});
$("#tbody2").empty();
},
});
}
</script>