如果数据过大,自动将 Smart Marker 数据填充到其他工作表

可能的使用场景

有时,如果数据太大,您希望自动将智能标记数据填充到其他工作表。假设您的数据源有 1500000 条记录。这对于单个工作表来说是太多的记录,那么您可以将其余记录移至下一个工作表。

如果数据太大,可以将智能标记数据自动填充到其他工作表

以下示例代码有一个包含21条记录的数据源。我们想在一个工作表中只展示15条记录,剩下的记录将自动移动到第二个工作表。请注意,第二个工作表也应具有相同的智能标记标签,并且您必须为两个工作表都调用WorkbookDesigner.process(sheetIndex, isPreserved)方法。请参考本代码中使用的Microsoft Access数据库文件 以及由代码生成的输出Excel文件

示例代码

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Create Connection object - connect to Microsoft Access Students Database
java.sql.Connection conn = java.sql.DriverManager.getConnection("jdbc:ucanaccess://" + srcDir + "sampleAutoPopulateSmartMarkerDataToOtherWorksheets.accdb");
// Create SQL Statement with Connection object
java.sql.Statement st = conn.createStatement();
// Execute SQL Query and obtain ResultSet
java.sql.ResultSet rsEmployees = st.executeQuery("SELECT * FROM Employees");
//Create empty workbook
Workbook wb = new Workbook();
//Access first worksheet and add smart marker in cell A1
Worksheet ws = wb.getWorksheets().get(0);
ws.getCells().get("A1").putValue("&=Employees.EmployeeID");
//Add second worksheet and add smart marker in cell A1
wb.getWorksheets().add();
ws = wb.getWorksheets().get(1);
ws.getCells().get("A1").putValue("&=Employees.EmployeeID");
//Create workbook designer
WorkbookDesigner wd = new WorkbookDesigner(wb);
//Set data source with result set
wd.setDataSource("Employees", rsEmployees, 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");