0

我没有使用任何第三方库,例如 EPPlus 或 OpenXml 规范。我没有为我的数据源导出 HTML 或 GridView。我没有使用 VBA。我正在从 DataTable 读取数据并构建表示数据的 xml 的字符串表示并将其保存为 .XLS 文件。问题是我似乎<AutoFilter />无法以迄今为止我能找到的任何方式开始工作:

  • <autoFilter ref=\"A1:D33\"></autoFilter>在结束标记之前添加。
  • <AutoFilter ref=\"A1:D33\"></AutoFilter>在结束标记之前添加。
  • <autoFilter ref=\"A1:D1\"></autoFilter>在结束标记之前添加。
  • <AutoFilter ref=\"A1:D1\"></AutoFilter>在结束标记之前添加。
  • 添加<AllowFilter /><WorkSheetOptions />标签。
  • 添加ref=\"A1:D33\"<Table />标签中。
  • 添加ref=\"A1:D1\"<Table />标签中。

我不是要求有人告诉我使用其他工具来构建它。我完全可以使用任意数量的方法来构建 Excel 输出,但这不是我对这个特定代码的要求。

如果有人有一套完整的 XML 示例集,我可以复制/粘贴,我会欣喜若狂……

4

1 回答 1

1

我不确定构建 XML 数据并将其保存到 .XLS 是什么意思。据我所知,这是不可行的。除非您谈论的是 Office XML 格式的“旧”版本(“新”版本是 Open XML,但您提到您没有使用它)。您也没有提到您想要自动筛选的位置(因为有 2 个地方,一个用于工作表,一个用于表格)。

所以这里有几个建议:

  1. 如果是表格,请将 autoFilter 标记作为表格标记中的第一个子标记。
  2. 如果是用于工作表,则 autoFilter 标记应位于工作表的这些子标记(如果存在)之后:sheetPr、Dimension、sheetViews、sheetFormatPr、cols、sheetData、sheetCalcPr、sheetProtection、protectedRanges、scenario(然后是 autoFilter)。这些子标签也是工作表的第一组子标签。
于 2013-10-31T02:50:31.633 回答