酒店官方网站建设书,忘记wordpress登录密码忘记,关于建设俄语网站的稿子,郑州网站app开发的简述
用Aspose.cells导出可以方便地将数据到Excel文档中#xff0c;简单的直接将DataTable列表写入即可#xff0c;复杂的格式一般会先做好模板#xff0c;再将数据填充进去#xff0c;这样可以保持设置好的样式#xff0c;又能快速填充内容#xff0c;十分方便。
智能…简述
用Aspose.cells导出可以方便地将数据到Excel文档中简单的直接将DataTable列表写入即可复杂的格式一般会先做好模板再将数据填充进去这样可以保持设置好的样式又能快速填充内容十分方便。
智能标记
用于让 Aspose.Cells 知道在 Microsoft Excel 设计器电子表格中放置哪些信息。智能标记允许您创建仅包含特定信息和格式的模板。
所有智能标记都以 开头。 Party.FullName 是数据标记的示例。如果数据标记产生多个项目例如一个完整的行则随后的行会自动向下移动以为新信息腾出空间。因此小计和总计可以放在数据标记之后的行上以根据插入的数据进行计算。要对插入的行进行计算请使用动态公式.
智能标记包括数据源和字段名称大多数信息的部分。特殊信息也可以与变量和变量数组一起传递。变量始终只填充一个单元格而变量数组可能填充多个单元格。每个细胞只使用一个数据标记。未使用的智能标记将被删除。
智能标记也可能包含参数。参数允许您修改信息的布局方式。它们作为逗号分隔列表附加到括号中的智能标记的末尾。
智能标记选项
数据源.字段名
[数据源].[字段名]
$变量名
$变量数组
动态公式
重复动态公式
动态公式
动态公式允许您将 Excel 公式插入到单元格中即使公式引用了将在导出过程中插入的行。动态公式可以为每个插入的行重复或仅使用放置数据标记的单元格。
动态公式允许以下附加选项
r - 当前行号。2, -1 - 当前行号的偏移量。
例如B{-1}/C{-1}~(skip:1)
在动态公式标记中“-1”分别表示B列和C列到当前行的偏移量将设置除法运算skip参数为一行。此外我们应该指定以下字符~
作为分隔符以在动态公式中应用更多参数。
以下屏幕截图说明了一个重复的动态公式和生成的 Excel 工作表。
模板文件输出文件 Cell “C1”包含公式A1*B1 单元格“C2”包含A2*B2单元格“C3”包含A3*B3.
详细介绍可以参考官方说明
模板设置
先按照普通excel文档进行框架设置要变化的部分根据Aspose.cells的预设格式SmartMakers进行编写。
示例如下图 对于普通的单个变量格式为$前缀后面跟上变量名即可。
对于列表变量前缀为后面填写变量名.字段名例如[bom].cInvName表名、字段名如果有特殊字符则用[]包裹如果没有则可以省略。
如果有主从表的按表名字段填入即可例如上图中上半部分是主表的也可以使用[master].field格式来设置不用分开传多个变量。
基本代码框架
string dataDir ;
// Instantiate the workbook from a template file that contains Smart MarkersWorkbook designer new Workbook(dataDir 模板文件修改成自己的.xlsx);DataTable dt new DataTable(); //修改为自己的数据源// 设置表名对应智能标记中的表名
dt.TableName Report;// 创建设计器
WorkbookDesigner d new WorkbookDesigner();// 关联文档
d.Workbook designer;// 设置数据源
d.SetDataSource(dt);// 执行合并
d.Process();// S保存文档
designer.Save(dataDir output.xlsx, SaveFormat.Xlsx);
其中SetDataSource的重载共有9个可以将普通数据、DataSet、DataTable、DataView、DataReader、List等设置为数据源。可根据情况选用。