Automatiskt fylla i Smart Marker data till andra kalkylblad om datan är för stor
Möjliga användningsscenario
Ibland vill du automatiskt fylla i Smart Marker-data till andra kalkylblad om det är för stort. Antag att din datakälla har 1500000 poster. Dessa är för många poster för ett enskilt kalkylblad, då kan du flytta resten av posterna till nästa kalkylblad.
Automatiskt fylla i Smart Marker-data till andra kalkylblad om datan är för stor
Följande provkod har en datakälla som har 21 poster. Vi vill visa endast 15 poster i ett kalkylblad, då flyttas resten av posterna automatiskt till det andra kalkylbladet. Observera, det andra kalkylbladet bör också ha samma Smart Marker-tag och du måste ringa WorkbookDesigner.process(sheetIndex, isPreserved)-metoden för båda kalkylbladen. Vänligen kontrollera även Microsoft Access-databasfilen som används i denna kod samt den output Excel-fil som genererats av koden för referens.
Exempelkod
// 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"); |