在插入单元格数据表行时向下移动第一行

可能的使用场景

Aspose.Cells允许您在将表格插入工作表时将第一行向下移动。本文档解释了如何使用Aspose.Cells API完成该任务。

将单元格数据表行插入时将第一行向下移动

以下示例代码说明了如何在将表格插入工作表时将第一行向下移动。我们在代码中使用简单的模板Excel文件来演示该功能。您可以通过将布尔ImportTableOptions.ShiftFirstRowDown属性设置为True/False来练习该功能,以便更好地理解。请参阅示例Excel文件(45056031.xlsx),输出Excel False文件(45056032.xlsx)和输出Excel True文件(45056033.xlsx)以供参考。

屏幕截图

todo:image_alt_text

示例代码

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
public class ShiftFirstRowDownWhenInsertingCellsDataTableRows
{
//Implement ICellsDataTable interface
class CellsDataTable : ICellsDataTable
{
//This is the current row index
int m_index = -1;
//These are your column names
static String[] colsNames = new String[] { "Pet", "Fruit", "Country", "Color" };
//These are the data of each column
static String[] col0data = new String[] { "Dog", "Cat", "Duck" };
static String[] col1data = new String[] { "Apple", "Pear", "Banana" };
static String[] col2data = new String[] { "UK", "USA", "China" };
static String[] col3data = new String[] { "Red", "Green", "Blue" };
//Combine all of the data into a single two dimensional array
static String[][] colsData = new String[][] { col0data, col1data, col2data, col3data };
//Leave this unimplemented because we do not need it
public object this[string columnName]
{
get
{
throw new NotImplementedException();
}
}
//It will return the current item data of given column
object ICellsDataTable.this[int columnIndex]
{
get
{
Object o = null;
o = colsData[columnIndex][m_index];
return o;
}
}
//It will return names of all the columns
string[] ICellsDataTable.Columns
{
get
{
return colsNames;
}
}
//It will return the count of all the items
int ICellsDataTable.Count
{
get
{
return col0data.Length;
}
}
//Set it -1
void ICellsDataTable.BeforeFirst()
{
m_index = -1;
}
//Increase the row index by 1
bool ICellsDataTable.Next()
{
m_index++;
return true;
}
}
public static void Run()
{
//Source directory
string sourceDir = RunExamples.Get_SourceDirectory();
//Output directory
string outputDir = RunExamples.Get_OutputDirectory();
//Create the instance of Cells Data Table
CellsDataTable cellsDataTable = new CellsDataTable();
//Load the sample workbook
Workbook wb = new Workbook(sourceDir + "sampleImportTableOptionsShiftFirstRowDown.xlsx");
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Import data table options
ImportTableOptions opts = new ImportTableOptions();
//We do now want to shift the first row down when inserting rows.
opts.ShiftFirstRowDown = false;
//Import cells data table
ws.Cells.ImportData(cellsDataTable, 2, 2, opts);
//Save the workbook
wb.Save(outputDir + "outputImportTableOptionsShiftFirstRowDown-False.xlsx");
}
}