1

我有两个 html 表,我想将它们放入同一个 excel 文件的 2 个不同工作表中。我正在使用 ASP.net MVC3 并将 FileResult 发送到我的页面。

FileResult 包含以下内容(减去字符串生成器):

        StringBuilder sb = new StringBuilder();
        sb.Append("<html xmlns:x=\"urn:schemas-microsoft-com:office:excel\">");
        sb.Append("<head>");
        sb.Append("<meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\">");
        sb.Append("<!--[if gte mso 9]>");
        sb.Append("<xml>");
        sb.Append("<x:ExcelWorkbook>");
        sb.Append("<x:ExcelWorksheets>");
        sb.Append("<x:ExcelWorksheet>");
        sb.Append(String.Format("<x:Name>{0}</x:Name>", ExcelSheetName));
        sb.Append("<x:WorksheetOptions>");
        sb.Append("<x:Panes></x:Panes>");
        sb.Append("</x:WorksheetOptions>");
        sb.Append("</x:ExcelWorksheet>");

        // sheet 2
        sb.Append("<x:ExcelWorksheet>");
        //sb.Append("<x:Table/>");
        //sb.Append("<x:Column x:Width=\"500\" />");
        //sb.Append("<x:Column x:Width=\"500\" />");
        //sb.Append("</x:Table/>");
        sb.Append(String.Format("<x:Name>Sheet2_Test</x:Name>"));
        //sb.Append("<Table ss:ExpandedColumnCount=\"2\" ss:ExpandedRowCount=\"5\" x:FullColumns=\"1\" x:FullRows=\"1\">");
        //sb.Append("<Row><Cell><Data ss:Type=\"String\">Text in cell A1</Data></Cell></Row>");
        //sb.Append("<Row><Cell ss:StyleID=\"s21\"><Data ss:Type=\"String\">Bold text in A2</Data></Cell></Row>");
        //sb.Append("<Row ss:Index=\"4\"><Cell ss:Index=\"2\"><Data ss:Type=\"Number\">43</Data></Cell></Row>");
        //sb.Append("<Row><Cell ss:Index=\"2\" ss:Formula=\"=R[-1]C/2\"><Data ss:Type=\"Number\">21.5</Data></Cell></Row>");
        //sb.Append("</Table>");
        sb.Append("<x:WorksheetOptions>");
        sb.Append("<x:Panes></x:Panes>");
        sb.Append("</x:WorksheetOptions>");
        sb.Append("</x:ExcelWorksheet>");

        sb.Append("</x:ExcelWorksheets>");
        sb.Append("</x:ExcelWorkbook>");
        sb.Append("</xml>");
        sb.Append("<![endif]-->");

然后我添加我的 html 表并返回结果。它工作得很好,我得到了第二张纸,但我不知道如何写第二张纸。有谁知道如何使用这种方法写入第二张纸?

4

1 回答 1

0

每张纸都应该有自己的<Worksheet>元素。然后每个<Worksheet>节点都有自己的<Table>元素,该元素具有一个或多个<Row>元素,该元素具有一个或多个<Cell>元素。

于 2013-06-25T21:50:55.343 回答