Автоматическое заполнение данными интеллектуальных маркеров на других рабочих листах, если данные слишком велики
Contents
[
Hide
]
Возможные сценарии использования
Иногда вы хотите автоматически заполнять данные интеллектуального маркера на других листах, если они слишком велики. Предположим, ваш источник данных имеет 1500000 записей. Это слишком много записей для одного рабочего листа, тогда вы можете переместить остальные записи на следующий рабочий лист.
Автоматически заполнять данные интеллектуальных маркеров на других рабочих листах, если данные слишком велики
В следующем примере кода есть источник данных с 21 записью. Мы хотим отображать только 15 записей на одном рабочем листе, тогда остальные записи автоматически переместятся на второй рабочий лист. Обратите внимание, что второй рабочий лист также должен иметь тот же тег смарт-маркера, и вы должны вызвать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"); |