Вставка и удаление строк и столбцов в Excel с использованием C++

MS Excel предоставляет множество возможностей для работы с файлами Excel. Одной из основных операций, которые вы можете выполнять, является вставка или удаление строк и столбцов. Вы можете оказаться в ситуации, когда вам нужно вставить или удалить строки и столбцы при программном управлении файлами Excel. В свете этого в этой статье вы узнаете, как вставлять и удалять строки и столбцы в листах Excel с помощью C++.

C++ API для вставки и удаления строк и столбцов в Excel

Aspose.Cells for C++ — это собственная библиотека C++, которая позволяет создавать, читать и обновлять файлы Excel, не требуя установки Microsoft Excel. API также поддерживает вставку и удаление строк и столбцов на листах Excel. Вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.

PM> Install-Package Aspose.Cells.Cpp

Вставка строк в рабочий лист Excel с помощью C++

Ниже приведен образ файла примера, которым мы будем манипулировать в этой статье.

Образец файла, используемый в примерах

Образец файла, используемый в примерах

Ниже приведены шаги для вставки строк на лист Excel.

В следующем примере кода показано, как вставлять строки на лист Excel с помощью C++.

// Путь к исходному каталогу.
StringPtr srcDir = new String("SourceDirectory\\");

// Выходной путь к каталогу.
StringPtr outDir = new String("OutputDirectory\\");

// Загрузите исходный файл Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Доступ к первому рабочему листу в файле Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Вставьте 2 строки в рабочий лист на 3-й позиции
worksheet->GetICells()->InsertRows(2, 2);

// Путь к выходному файлу Excel
StringPtr outputInsertRows = outDir->StringAppend(new String("outputInsertRows.xlsx"));

// Сохраните файл Excel.
workbook->Save(outputInsertRows);
Вывод, сгенерированный примером кода

Вывод, сгенерированный примером кода

Вставка столбцов на лист Excel с помощью C++

Ниже приведены шаги для вставки столбцов на лист Excel.

В следующем примере кода показано, как вставить столбцы на лист Excel с помощью C++.

// Путь к исходному каталогу.
StringPtr srcDir = new String("SourceDirectory\\");

// Выходной путь к каталогу.
StringPtr outDir = new String("OutputDirectory\\");

// Загрузите исходный файл Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Доступ к первому рабочему листу в файле Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Вставьте 2 столбца в рабочий лист на 2-й позиции
worksheet->GetICells()->InsertColumns(1, 2);

// Путь к выходному файлу Excel
StringPtr outputInsertColumns = outDir->StringAppend(new String("outputInsertColumns.xlsx"));

// Сохраните файл Excel.
workbook->Save(outputInsertColumns);
Вывод, сгенерированный примером кода

Вывод, сгенерированный примером кода

Удалить строки из листа Excel с помощью С++

Ниже приведены шаги для удаления строк из рабочего листа Excel.

В следующем примере кода показано, как удалить строки из листа Excel с помощью C++.

// Путь к исходному каталогу.
StringPtr srcDir = new String("SourceDirectory\\");

// Выходной путь к каталогу.
StringPtr outDir = new String("OutputDirectory\\");

// Загрузите исходный файл Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Доступ к первому рабочему листу в файле Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Удалить 2 строки, начиная с 3-й строки
worksheet->GetICells()->DeleteRows(2, 2, true);

// Путь к выходному файлу Excel
StringPtr outputDeleteRows = outDir->StringAppend(new String("outputDeleteRows.xlsx"));

// Сохраните файл Excel.
workbook->Save(outputDeleteRows);
Вывод, сгенерированный примером кода

Вывод, сгенерированный примером кода

Удалить столбцы из листа Excel с помощью С++

Ниже приведены шаги для удаления столбцов из листа Excel.

В следующем примере кода показано, как удалить столбцы из листа Excel с помощью C++.

// Путь к исходному каталогу.
StringPtr srcDir = new String("SourceDirectory\\");

// Выходной путь к каталогу.
StringPtr outDir = new String("OutputDirectory\\");

// Загрузите исходный файл Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Доступ к первому рабочему листу в файле Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Удалить 2 столбца из рабочего листа, начиная со 2-й позиции
worksheet->GetICells()->DeleteColumns(1, 2, true);

// Путь к выходному файлу Excel
StringPtr outputDeleteColumns = outDir->StringAppend(new String("outputDeleteColumns.xlsx"));

// Сохраните файл Excel.
workbook->Save(outputDeleteColumns);
Вывод, сгенерированный примером кода

Вывод, сгенерированный примером кода

Получить бесплатную лицензию

Вы можете попробовать API без ограничений на пробную версию, запросив бесплатную временную лицензию.

Вывод

В этой статье вы узнали, как вставлять и удалять строки и столбцы на листе Excel с помощью C++. Aspose.Cells for C++ — это обширный API, который предоставляет множество дополнительных функций для автоматизации ваших задач, связанных с Excel. Вы можете подробно изучить API, посетив официальную документацию. Если у вас возникнут вопросы, свяжитесь с нами на нашем бесплатном форуме поддержки.

Смотрите также