使用 C++ 在 Excel 中插入和删除行和列

MS Excel 为您提供了许多处理 Excel 文件的功能。您可以执行的基本操作之一是插入或删除行和列。您可能会发现自己需要在以编程方式操作 Excel 文件时插入或删除行和列。鉴于此,本文将教您如何使用 C++ 在 Excel 工作表中插入和删除行和列。

在 Excel 中插入和删除行和列的 C++ API

Aspose.Cells for C++ 是一个原生 C++ 库,允许您创建、读取和更新 Excel 文件,而无需安装 Microsoft Excel。该 API 还支持在 Excel 工作表中插入和删除行和列。您可以通过 NuGet 安装 API,也可以直接从 下载 部分下载。

PM> Install-Package Aspose.Cells.Cpp

使用 C++ 在 Excel 工作表中插入行

以下是我们将在本文中操作的示例文件的图像。

示例中使用的示例文件

示例中使用的示例文件

以下是在 Excel 工作表中插入行的步骤。

以下示例代码显示了如何使用 C++ 在 Excel 工作表中插入行。

// 源目录路径。
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 行
worksheet->GetICells()->InsertRows(2, 2);

// 输出 Excel 文件的路径
StringPtr outputInsertRows = outDir->StringAppend(new String("outputInsertRows.xlsx"));

// 保存 Excel 文件。
workbook->Save(outputInsertRows);
示例代码生成的输出

示例代码生成的输出

使用 C++ 在 Excel 工作表中插入列

以下是在 Excel 工作表中插入列的步骤。

以下示例代码显示了如何使用 C++ 在 Excel 工作表中插入列。

// 源目录路径。
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 列
worksheet->GetICells()->InsertColumns(1, 2);

// 输出 Excel 文件的路径
StringPtr outputInsertColumns = outDir->StringAppend(new String("outputInsertColumns.xlsx"));

// 保存 Excel 文件。
workbook->Save(outputInsertColumns);
示例代码生成的输出

示例代码生成的输出

使用 C++ 从 Excel 工作表中删除行

以下是从 Excel 工作表中删除行的步骤。

以下示例代码显示如何使用 C++ 从 Excel 工作表中删除行。

// 源目录路径。
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);

// 从第 3 行开始删除 2 行
worksheet->GetICells()->DeleteRows(2, 2, true);

// 输出 Excel 文件的路径
StringPtr outputDeleteRows = outDir->StringAppend(new String("outputDeleteRows.xlsx"));

// 保存 Excel 文件。
workbook->Save(outputDeleteRows);
示例代码生成的输出

示例代码生成的输出

使用 C++ 从 Excel 工作表中删除列

以下是从 Excel 工作表中删除列的步骤。

以下示例代码显示如何使用 C++ 从 Excel 工作表中删除列。

// 源目录路径。
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,而不受评估限制。

结论

在本文中,您学习了如何使用 C++ 在 Excel 工作表中插入和删除行和列。 Aspose.Cells for C++ 是一个庞大的 API,它提供了一系列附加功能,用于自动执行与 Excel 相关的任务。您可以通过访问 官方文档 来详细探索 API。如有任何问题,请随时通过我们的 免费支持论坛 与我们联系。

也可以看看