Вставка и удаление строк и столбцов
Введение
При создании нового листа Excel с нуля или работе с существующим листом нам может потребоваться добавить дополнительные строки или столбцы для размещения большего объема данных. Напротив, также может потребоваться удалить строки или столбцы из указанных позиций в листе.
Для выполнения этих требований Aspose.Cells предоставляет очень простой набор классов и методов, рассматриваемых ниже.
Как управлять строками/столбцами
Aspose.Cells предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит WorksheetCollection, который позволяет получить доступ к каждому листу в файле Excel. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells, которая представляет все ячейки на листе.
Коллекция Cells предоставляет несколько методов для управления строками и столбцами на листе. Некоторые из них обсуждаются ниже.
Как вставить строку
Вставьте строку в любом месте, вызвав метод insertRows коллекции Cells. Метод insertRows принимает индекс строки, куда будет вставлена новая строка, в качестве первого аргумента, и количество вставляемых строк в качестве второго аргумента.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(InsertingARow.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Inserting a row into the worksheet at 3rd position | |
worksheet.getCells().insertRows(2, 1); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "InsertingARow_out.xls"); |
Как вставить несколько строк
Для вставки нескольких строк на лист вызовите метод insertRows коллекции Cells. Метод insertRows принимает два параметра:
- Индекс строки: индекс строки, откуда будут вставлены новые строки.
- Количество строк: общее количество строк, которые нужно вставить.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(InsertingMultipleRows.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Inserting 10 rows into the worksheet starting from 3rd row | |
worksheet.getCells().insertRows(2, 10); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "InsertingMultipleRows_out.xls"); |
Как вставить строку с форматированием
Для вставки строки с параметрами форматирования используйте перегрузку insertRows, которая принимает InsertOptions в качестве параметра. Установите свойство CopyFormatType класса InsertOptions со значением CopyFormatType Enumeration. В перечислении CopyFormatType есть три элемента, перечисленных ниже.
- ТАКОЙ_ЖЕ_КАК_ВЫШЕ: форматирует строку так же, как и строку выше.
- ТАКОЙ_ЖЕ_КАК_НИЖЕ: форматирует строку так же, как и строку ниже.
- ОЧИСТИТЬ: очищает форматирование.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(InsertingARowWithFormatting.class) + "RowsAndColumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "Book1.xlsx"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Setting Formatting options | |
InsertOptions insertOptions = new InsertOptions(); | |
insertOptions.setCopyFormatType(CopyFormatType.SAME_AS_ABOVE); | |
// Inserting a row into the worksheet at 3rd position | |
worksheet.getCells().insertRows(2, 1, insertOptions); | |
// Saving the modified Excel file | |
workbook.save(dataDir + "InsertingARowWithFormatting_out.xlsx"); |
Как удалить строку
Чтобы удалить строку в любом месте, вызовите метод deleteRows коллекции Cells. Метод deleteRows принимает два параметра:
- Индекс строки: индекс строки, с которой будут удалены строки.
- Количество строк: общее количество строк, которые необходимо удалить.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(DeleteARow.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Deleting 3rd row from the worksheet | |
worksheet.getCells().deleteRows(2, 1, true); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "DeleteARow_out.xls"); |
Как удалить несколько строк
Чтобы удалить несколько строк из листа, вызовите метод deleteRows коллекции Cells . Метод deleteRows принимает два параметра:
- Индекс строки: индекс строки, с которой будут удалены строки.
- Количество строк: общее количество строк, которые необходимо удалить.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(DeleteMultipleRows.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "Book1.xlsx"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Deleting 10 rows from the worksheet starting from 3rd row | |
worksheet.getCells().deleteRows(2, 10, true); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "DeleteMultipleRows_out.xls"); |
Как вставить один или несколько столбцов
Разработчики также могут вставить столбец в лист по любому местоположению, вызвав метод insertColumns коллекции Cells . Метод insertColumns принимает два параметра:
- Индекс столбца, индекс столбца, в который будет вставлен столбец
- Количество столбцов, общее количество столбцов, которые необходимо вставить
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(InsertingAColumn.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Inserting a column into the worksheet at 2nd position | |
worksheet.getCells().insertColumns(1, 1); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "InsertingAColumn_out.xls"); |
Как удалить столбец
Чтобы удалить столбец из листа в любом месте, вызовите метод deleteColumns коллекции Cells . Метод deleteColumns принимает следующие параметры:
- Индекс столбца: индекс столбца, из которого будет удален столбец.
- Количество столбцов: общее количество столбцов, которые необходимо удалить.
- Обновить ссылку: логический параметр, указывающий, следует ли обновлять ссылки в других листах.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(DeleteAColumn.class) + "rows_cloumns/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "Book1.xlsx"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Deleting a column from the worksheet at 2nd position | |
worksheet.getCells().deleteColumns(1, 1, true); | |
// Saving the modified Excel file in default (that is Excel 2000) format | |
workbook.save(dataDir + "DeleteAColumn_out.xls"); |