如果数据过大,自动将 Smart Marker 数据填充到其他工作表
Contents
[
Hide
]
可能的使用场景
有时,如果数据源包含 1500000 条记录,对于单个工作表来说太多了,那么您可以将其余的记录移动到下一个工作表。
如果数据过大,自动填充 Smart Marker 数据到其他工作表
以下示例代码具有一个数据源,其中包含 21 条记录。我们只想在一个工作表中显示 15 条记录,其余记录将自动移至第二个工作表。请注意,第二个工作表也应具有相同的 Smart Marker 标记,并且您必须为这两个工作表都调用 WorkbookDesigner.Process(sheetIndex, isPreserved) 方法。请参阅代码生成的输出 Excel 文件以进行参考。
示例代码
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Create employees data table | |
DataTable dt = new DataTable("Employees"); | |
dt.Columns.Add("EmployeeID", typeof(int)); | |
//Add rows inside the data table | |
dt.Rows.Add(1230); | |
dt.Rows.Add(1231); | |
dt.Rows.Add(1232); | |
dt.Rows.Add(1233); | |
dt.Rows.Add(1234); | |
dt.Rows.Add(1235); | |
dt.Rows.Add(1236); | |
dt.Rows.Add(1237); | |
dt.Rows.Add(1238); | |
dt.Rows.Add(1239); | |
dt.Rows.Add(1240); | |
dt.Rows.Add(1241); | |
dt.Rows.Add(1242); | |
dt.Rows.Add(1243); | |
dt.Rows.Add(1244); | |
dt.Rows.Add(1245); | |
dt.Rows.Add(1246); | |
dt.Rows.Add(1247); | |
dt.Rows.Add(1248); | |
dt.Rows.Add(1249); | |
dt.Rows.Add(1250); | |
//Create data reader from data table | |
DataTableReader dtReader = dt.CreateDataReader(); | |
//Create empty workbook | |
Workbook wb = new Workbook(); | |
//Access first worksheet and add smart marker in cell A1 | |
Worksheet ws = wb.Worksheets[0]; | |
ws.Cells["A1"].PutValue("&=Employees.EmployeeID"); | |
//Add second worksheet and add smart marker in cell A1 | |
wb.Worksheets.Add(); | |
ws = wb.Worksheets[1]; | |
ws.Cells["A1"].PutValue("&=Employees.EmployeeID"); | |
//Create workbook designer | |
WorkbookDesigner wd = new WorkbookDesigner(wb); | |
//Set data source with data reader | |
wd.SetDataSource("Employees", dtReader, 15); | |
//Process smart marker tags in first and second worksheet | |
wd.Process(0, false); | |
wd.Process(1, false); | |
//Save the workbook | |
wb.Save("outputAutoPopulateSmartMarkerDataToOtherWorksheets.xlsx"); |