C#を使用してExcelで行と列を挿入または削除する

C#開発者は、プログラムでExcelワークシートの行と列を簡単に挿入または削除できます。この記事では、C#を使用してExcelシートの行と列を挿入または削除する方法を学習します。

この記事では、次のトピックについて説明/取り上げています。

行と列を挿入または削除するC#API

Excelシートの行と列を挿入または削除するには、Aspose.Cells for .NETAPIを使用します。これは、.NETアプリケーション内からExcelファイルを作成および処理できる有名なスプレッドシート操作APIです。 APIを使用すると、Excelファイルに単一または複数の行と列を挿入できます。また、プログラムで行と列を削除することもできます。

APIのDLLをダウンロードするか、NuGetを使用してインストールできます。

Install-Package Aspose.Cells

C#を使用してExcelワークシートに行を挿入する

以下の手順に従って、プログラムでExcelシートに行を挿入できます。

  • 入力ファイルパスを使用してWorkbookクラスのインスタンスを作成します。
  • Worksheetクラスのインスタンスを作成します。
  • Worksheetsコレクションのワークシートにインデックスでアクセスします。
  • InsertRows()メソッドを呼び出して行を挿入し、開始する行インデックスと挿入する行の合計を渡します。
  • 出力ファイルパスを指定してSave()メソッドを呼び出します。

次のコードサンプルは、C#を使用してExcelシートに複数の行を挿入する方法を示しています。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// 3行目から10行をワークシートに挿入します
worksheet.Cells.InsertRows(2, 10);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");
C#を使用してExcelワークシートに行を挿入する

C#を使用してExcelワークシートに複数の行を挿入します。

同様に、次のコード例を使用して、Excelシートに単一の行を挿入できます。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// ワークシートの3番目の位置に行を挿入する
worksheet.Cells.InsertRow(2);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");
C#を使用してExcelワークシートに単一の行を挿入します

C#を使用してExcelワークシートに単一の行を挿入します

APIのWorkbookクラスは、Excelワークブックを表します。このクラスのWorksheetsプロパティを使用して、ワークブック内で使用可能なすべてのワークシートのコレクションを取得できます。 Excelブックの単一のワークシートには、そのインデックスを使用してワークシートのコレクションからアクセスできます。 Worksheetクラスは、単一のワークシートを表します。ワークシートでさまざまな操作を実行するためのいくつかのプロパティとメソッドを公開しています。このクラスのCellsプロパティは、ワークシートで使用可能なセルのコレクションを表します。 Cellsクラスは、ワークシート内の個々のセルを表します。

CellsクラスのInsertRow()メソッドを使用すると、指定したインデックスに単一の行を挿入できます。 Cellsクラスは、同時に複数の行を挿入するためのInsertRows()メソッドも提供します。行の挿入を開始する場所からの行インデックスと、入力パラメーターとして挿入する新しい行の総数を取得します。

WorkbookクラスのSave()メソッドは、入力パラメーターとして指定された指定のファイルパスにブックを保存します。

C#を使用してExcelワークシートに書式設定された行を挿入する

以下の手順に従って、プログラムでExcelシートに書式設定された行を挿入できます。

  • 入力ファイルパスを使用してWorkbookクラスのインスタンスを作成します。
  • Worksheetクラスのインスタンスを作成します。
  • Worksheetsコレクションのワークシートにインデックスでアクセスします。
  • InsertOptionsクラスのインスタンスを作成します。
  • CopyFormatTypeプロパティを設定します
  • 行インデックス、挿入する行の合計を指定してInsertRows()メソッドを呼び出し、InsertOptionsを渡します。
  • 出力ファイルパスを指定してSave()メソッドを呼び出します。

次のコードサンプルは、C#を使用してExcelシートに書式設定された行を挿入する方法を示しています。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// フォーマットオプションの設定
InsertOptions insertOptions = new InsertOptions();
insertOptions.CopyFormatType = CopyFormatType.SameAsAbove;

// ワークシートの3番目の位置に行を挿入する
worksheet.Cells.InsertRows(2, 1, insertOptions);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");

APIのInsertOptionsクラスは、行または列を挿入する際のオプションを表します。このクラスのCopyFormatTypeプロパティは、行を挿入するときのコピー形式のタイプを表し、次のタイプをサポートします。

  • SameAsAbove —上記の行と同じ形式をコピーできます。
  • SameAsBelow —以下の行と同じフォーマットをコピーできます。
  • クリア—フォーマットをクリアできます。

C#を使用してExcelワークシートから行を削除する

以下の手順に従って、プログラムでExcelシートから行を削除できます。

  • 入力ファイルパスを使用してWorkbookクラスのインスタンスを作成します。
  • Worksheetクラスのインスタンスを作成します。
  • Worksheetsコレクションのワークシートにインデックスでアクセスします。
  • DeleteRows()メソッドを呼び出して行を削除し、行インデックスと合計行を渡して削除します。
  • 出力ファイルパスを指定してSave()メソッドを呼び出します。

次のコードサンプルは、C#を使用してExcelシートから行を削除する方法を示しています。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// 3行目から10行をワークシートに削除します
worksheet.Cells.DeleteRows(2, 10);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");

CellsクラスのDeleteRow()メソッドを使用すると、指定したインデックスの1つの行を削除できます。同様に、DeleteRows()メソッドでは、複数の行を削除できます。入力パラメータとして、行の削除を開始する場所からの行インデックスと、削除する行の総数を取得します。

C#を使用してExcelワークシートに列を挿入する

以下の手順に従って、プログラムでExcelシートに列を挿入できます。

  • 入力ファイルパスを使用してWorkbookクラスのインスタンスを作成します。
  • Worksheetクラスのインスタンスを作成します。
  • Worksheetsコレクションのワークシートにインデックスでアクセスします。
  • InsertColumn()メソッドを呼び出して列を挿入し、新しい列を挿入する場所に列インデックスを渡します。
  • 出力ファイルパスを指定してSave()メソッドを呼び出します。

次のコードサンプルは、C#を使用してExcelシートに列を挿入する方法を示しています。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// ワークシートの2番目の位置に列を挿入する
worksheet.Cells.InsertColumn(1);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");
C#を使用してExcelワークシートに単一の列を挿入します

C#を使用してExcelワークシートに単一の列を挿入します。

同様に、以下のコードサンプルを使用して、Excelシートに複数の列を挿入できます。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// 2番目の位置から5列をワークシートに挿入します
worksheet.Cells.InsertColumns(2, 5);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");
C#を使用してExcelワークシートに複数の列を挿入します。

C#を使用してExcelワークシートに複数の列を挿入します。

Excelワークシートに列を挿入するために、Cellsクラスは、ワークシートに複数の列を挿入するためのInsertColumns()メソッドを提供します。列の挿入を開始する場所からの列インデックスと、入力パラメーターとして挿入する新しい列の総数を取得します。 Cellsクラスは、指定されたインデックスに単一の列を挿入するためのInsertColumn()メソッドも提供します。

C#を使用してExcelワークシートから列を削除する

以下の手順に従って、プログラムでExcelシートから列を削除できます。

  • 入力ファイルパスを使用してWorkbookクラスのインスタンスを作成します。
  • Worksheetクラスのインスタンスを作成します。
  • Worksheetsコレクションのワークシートにインデックスでアクセスします。
  • DeleteColumn()メソッドを呼び出して列を削除し、列インデックスを渡して削除します。
  • 出力ファイルパスを指定してSave()メソッドを呼び出します。

次のコードサンプルは、C#を使用してExcelシートから列を削除する方法を示しています。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// ワークシートから3番目の列を削除する
worksheet.Cells.DeleteColumn(2);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");

同様に、次のコード例を使用して、Excelシートから複数の列を削除できます。

// Workbookオブジェクトのインスタンス化
// ファイルストリームを介してExcelファイルを開く
Workbook workbook = new Workbook(@"C:\Files\Book1.xlsx");

// Excelファイルの最初のワークシートにアクセスする
Worksheet worksheet = workbook.Worksheets[0];

// 3列目から始まるワークシートから5列を削除する
worksheet.Cells.DeleteColumns(2, 5, false);

// 変更したExcelファイルを保存する
workbook.Save(@"C:\Files\output.xlsx");

DeleteColumns()メソッドを使用すると、一度に複数の列を削除できます。 3つのパラメーター、列の削除を開始する場所からの列インデックス、入力パラメーターとして削除する列の総数、および他のワークシートの参照を更新するかどうかを示すtrueまたはfalseの値を取ります。同様に、CellsクラスのDeleteColumn()メソッドを使用すると、指定したインデックスの1つの列を削除できます。

無料ライセンスを取得する

無料の一時ライセンスをリクエストすることで、評価の制限なしにAPIを試すことができます。

結論

この記事では、C#を使用してExcelファイルに行または列を挿入する方法を学習しました。また、プログラムでExcelファイルから行と列を削除する方法も学習しました。さらに、Excelシートに複数の行または列を挿入する方法を学習しました。さらに、C#を使用してExcelファイルから複数の行または列を削除する方法を学習しました。 ドキュメントを使用して、Aspose.Cells for.NETAPIの詳細を確認できます。あいまいな点がありましたら、フォーラムまでお気軽にお問い合わせください。

関連項目