IronXL ハウツー Excel .NET 書き込み IronXL を使用して C# で Excel .NET 関数を記述する カーティス・チャウ 更新日:8月 20, 2025 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる ジェミニで開く このページについてGeminiに問い合わせる 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English 多くのC#アプリケーションプロジェクトでは、プログラムでExcelスプレッドシートにファイルを更新し、新しいデータを書き込む必要があります。 Excel .NET の機能は時には複雑ですが、IronXLライブラリを使用することで、この作業は非常に簡単で、任意のフォーマットでExcelスプレッドシートを操作することができます。 大量のコード行を必要とせず、指定されたセルと割り当てたカスタム値にアクセスするだけです。 クイックスタート: 特定のセルに値を書く この例では、IronXLを使用して簡単に値を単一セルに書き込み、数行でExcelファイルを保存する方法を示しています—テンプレートや複雑さなしに始めましょう。 今すぐ NuGet で PDF を作成してみましょう: NuGet パッケージ マネージャーを使用して IronXL をインストールします PM > Install-Package IronXL.Excel このコード スニペットをコピーして実行します。 worksheet["A1"].Value = "Hello, IronXL!"; workbook.SaveAs("output.xlsx"); 実際の環境でテストするためにデプロイする 今すぐ無料トライアルでプロジェクトに IronXL を使い始めましょう 30日間無料トライアル Excel .NET 命令の記述 Excel .NET 用のライブラリをダウンロード 特定のセルに値を書き込み 複数のセルに静的な値を書き込み セル範囲に動的な値を書き込み 特定の行、列、範囲などでセルの値を置換 Excelファイルへのアクセス まず、データを書き込みたいExcelファイルにアクセスすることから始めましょう。 プロジェクト内でExcelファイルを開き、次に以下のコードを使用して特定のワークシートを開きます。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-load-file.cs // Load Excel file in the project WorkBook workBook = WorkBook.Load("path"); ' Load Excel file in the project Dim workBook As WorkBook = WorkBook.Load("path") $vbLabelText $csharpLabel 上記により、指定されたExcelファイルが開かれます。次にワークシートにアクセスします。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-get-sheet.cs // Open Excel WorkSheet WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); ' Open Excel WorkSheet Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1") $vbLabelText $csharpLabel Excelワークシートはworksheetで開かれ、このExcelファイルに任意のタイプのデータを書き込むことができます。 Excelファイルの読み込みや、リンクの例を通じて異なる方法でワークシートにアクセスする方法をもっと学ぶことができます。 注意: プロジェクトにIronXLの参照を追加し、ライブラリをusing IronXLを使用してインポートするのを忘れずに。 特定のセルに値を書く Excelファイルに書き込む際には、多くの方法がありますが、基本的なアプローチはExcelCellを使うことです。 この目的のために、開かれたExcelワークシートの任意のセルにアクセスし、以下のようにしてそこに値を書き込むことができます。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell.cs workSheet["Cell Address"].Value="Assign the Value"; workSheet("Cell Address").Value="Assign the Value" $vbLabelText $csharpLabel 以下は、私たちのC#プロジェクトでExcel Cellに書き込むための上記関数を使用する方法の例です。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-full.cs using IronXL; // Load Excel file WorkBook workBook = WorkBook.Load("sample.xlsx"); // Open WorkSheet of sample.xlsx WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Access A1 cell and write the value workSheet["A1"].Value = "new value"; // Save changes workBook.SaveAs("sample.xlsx"); Imports IronXL ' Load Excel file Private workBook As WorkBook = WorkBook.Load("sample.xlsx") ' Open WorkSheet of sample.xlsx Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1") ' Access A1 cell and write the value Private workSheet("A1").Value = "new value" ' Save changes workBook.SaveAs("sample.xlsx") $vbLabelText $csharpLabel このコードは、Excelファイルsample.xlsxのワークシートSheet1のセルA1にnew valueを書き込みます。 同様に、Excelファイルの任意のセルアドレスに値を挿入することができます。 注意: 上記の例のように、ワークシートに新しい値を書き込んだ後、Excelファイルを保存するのを忘れないでください。 正確な値を強制的に割り当てる Valueプロパティを設定する際、IronXLはそれを対応する値タイプに変換しようとします。 時にはこの評価は望ましくなく、ユーザーが変換せずに正確な値をセルに強制的に割り当てたい場合があります。 これを行うには、値を文字列として割り当てます。 IronXLでは、同じ効果を達成するためにValueの代わりにStringValueを使用します。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs // Assign value as string workSheet["A1"].StringValue = "4402-12"; ' Assign value as string workSheet("A1").StringValue = "4402-12" $vbLabelText $csharpLabel 範囲に静的な値を書く 複数のセル、つまり範囲に新しい値を書くことができます、以下の通りです: // Assign a static value to a range of cells worksheet["B2:C5"].Value = "static value"; // Assign a static value to a range of cells worksheet["B2:C5"].Value = "static value"; ' Assign a static value to a range of cells worksheet("B2:C5").Value = "static value" $vbLabelText $csharpLabel この方法では、データが書き込まれるセルの範囲をFromからToへと指定します。 new valueは、この範囲に含まれるすべてのセルに書き込まれます。 C# Excel Rangeについてもっと理解するには、こちらの例をチェックしてください。 以下の例を使用して、範囲を書き込むアクションを見てみましょう。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-range-full.cs using IronXL; // Load Excel file WorkBook workBook = WorkBook.Load("sample.xlsx"); // Open WorkSheet of sample.xlsx WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Specify range row wise and write new value workSheet["B2:B9"].Value = "new value"; // Specify range column wise and write new value workSheet["C3:C7"].Value = "new value"; // Save changes workBook.SaveAs("sample.xlsx"); Imports IronXL ' Load Excel file Private workBook As WorkBook = WorkBook.Load("sample.xlsx") ' Open WorkSheet of sample.xlsx Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1") ' Specify range row wise and write new value Private workSheet("B2:B9").Value = "new value" ' Specify range column wise and write new value Private workSheet("C3:C7").Value = "new value" ' Save changes workBook.SaveAs("sample.xlsx") $vbLabelText $csharpLabel このコードは、Excelファイルsample.xlsxのワークシートSheet1のB2からC5までnew valueを書き込みます。 Excelセルに静的な値を使用します。 範囲に動的な値を書く 以下のように、範囲に動的な値を追加することもできます。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-dynamic-value.cs using IronXL; // Load Excel file WorkBook workBook = WorkBook.Load("sample.xlsx"); // Open WorkSheet of sample.xlsx WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Specify range in which we want to write the values for (int i = 2; i <= 7; i++) { // Write the Dynamic value in one row workSheet["B" + i].Value = "Value" + i; // Write the Dynamic value in another row workSheet["D" + i].Value = "Value" + i; } // Save changes workBook.SaveAs("sample.xlsx"); Imports IronXL ' Load Excel file Private workBook As WorkBook = WorkBook.Load("sample.xlsx") ' Open WorkSheet of sample.xlsx Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1") ' Specify range in which we want to write the values For i As Integer = 2 To 7 ' Write the Dynamic value in one row workSheet("B" & i).Value = "Value" & i ' Write the Dynamic value in another row workSheet("D" & i).Value = "Value" & i Next i ' Save changes workBook.SaveAs("sample.xlsx") $vbLabelText $csharpLabel 上記のコードは、Excelファイルsample.xlsxの列Bの2から7に動的な値を書き込みます。 sample.xlsxでのコードの結果を見ることができます。 Excelセル値を置き換える IronXLを使用すると、Replace()関数を使って、古い値を置き換える新しい値を書き込むことが簡単にできます: :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace.cs workSheet.Replace("old value", "new value"); workSheet.Replace("old value", "new value") $vbLabelText $csharpLabel 上記の関数は、新しいnew valueを書き込み、古いold valueを完全なExcelワークシートに上書きします。 特定の行でセル値を置き換える 特定の行にのみ新しい値を書き込みたい場合は、以下のように行います: :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-row.cs workSheet.Rows[RowIndex].Replace("old value", "new value"); workSheet.Rows(RowIndex).Replace("old value", "new value") $vbLabelText $csharpLabel これは、指定された行インデックスのみにnew valueをold valueの上に書き込むことになります。 特定の列でセル値を置き換える 同様に、特定の列内でold valueの上にnew valueを書き込む場合は、以下のように行います: :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-column.cs workSheet.Columns[ColumnIndex].Replace("old value", "new Value"); workSheet.Columns(ColumnIndex).Replace("old value", "new Value") $vbLabelText $csharpLabel 上記のコードは、指定された列インデックスに限定して、old valueを置き換えるnew valueを書き込みます。 ワークシートの残りは同じままです。 特定の範囲でセル値を置き換える IronXLは、指定された範囲内のみでold valueを置き換えるnew valueを書く方法も提供します。 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-range.cs workSheet["From Cell Address : To Cell Address"].Replace("old value", "new value"); workSheet("From Cell Address : To Cell Address").Replace("old value", "new value") $vbLabelText $csharpLabel これは、指定された範囲に含まれるセルだけにold valueの上にnew valueを書き込みます。 上記のすべての関数を使って、Excelワークシートで古い値を置き換えるために新しい値を書く方法の例を見てみましょう。 すべての関数の例 :path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-full.cs using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Write new above old in complete WorkSheet workSheet.Replace("old", "new"); // Write new above old just in row no 6 of WorkSheet workSheet.Rows[5].Replace("old", "new"); // Write new above old just in column no 5 of WorkSheet workSheet.Columns[4].Replace("old", "new"); // Write new above old just from A5 to H5 of WorkSheet workSheet["A5:H5"].Replace("old", "new"); workBook.SaveAs("sample.xlsx"); Imports IronXL Private workBook As WorkBook = WorkBook.Load("sample.xlsx") Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1") ' Write new above old in complete WorkSheet workSheet.Replace("old", "new") ' Write new above old just in row no 6 of WorkSheet workSheet.Rows(5).Replace("old", "new") ' Write new above old just in column no 5 of WorkSheet workSheet.Columns(4).Replace("old", "new") ' Write new above old just from A5 to H5 of WorkSheet workSheet("A5:H5").Replace("old", "new") workBook.SaveAs("sample.xlsx") $vbLabelText $csharpLabel Excel .NET アプリケーションの書き方についての詳細や、C#でのExcelファイルのオープンと書き込みについての完全なチュートリアルをチェックしてください。 チュートリアル クイックアクセス APIリファレンスを読む ライブラリで使用できるすべての関数、機能、名前空間、クラス、列挙型のリストを含む IronXL ドキュメントをお読みください。 APIリファレンスを読む よくある質問 どうすれば .NET でExcelファイルの記述を始められますか? IronXLを始めるには、ライブラリをダウンロードしてプロジェクトに追加してください。C#コードで using IronXL を使用してライブラリをインポートします。 Excelワークシートの特定のセルに値を書き込むにはどうすれば良いですか? IronXLを使用して特定のセルに値を書くには、worksheet['A1'] のようにしてセルにアクセスし、.Value プロパティを使用して値を割り当てます。 Excelでセルの範囲に静的な値を割り当てるにはどうすれば良いですか? IronXLを使用して範囲に静的な値を割り当てるには、例えば worksheet['B2:C5'] のようにセルアドレスを指定し、.Value プロパティを希望する静的値に設定します。 Excelでセルの範囲に動的な値を書くことはできますか? はい、IronXLを使用すると、ループやカスタムロジックを使用して範囲に動的な値を書き込むことができます。例えば、セルアドレスを繰り返して、要件に基づいて動的な値を割り当てることができます。 Excelワークシートの既存のセル値をどのように置換できますか? IronXLを使用することで、ワークシート、行、列、または指定された範囲で、'old value' を 'new value' で置き換えるために Replace() メソッドを使用できます。 ValueとStringValueを使用することの違いは何ですか? IronXL では、.Value プロパティは指定された値を型固有の形式に変換する場合があり、.StringValue は値を文字列として割り当て、変換を避けます。 Excelファイルで特定のワークシートを開きアクセスするにはどうすれば良いですか? IronXLの WorkBook.Load('path/to/your/excel-file.xlsx') を使用してファイルを読み込み、workbook.GetWorkSheet('SheetName') を使用して特定のワークシートにアクセスします。 新しい値を書き込んだ後、Excelファイルを保存する必要がありますか? はい、IronXLを使用する場合、workbook.SaveAs('filename.xlsx') メソッドを使用して変更を永続化することで、変更後にExcelファイルを保存する必要があります。 特定の行の古い値を置き換える新しい値を書き込むにはどうすればよいですか? IronXLを使用して行にアクセスし worksheet.Rows[index] を使用し、その後、古い値と新しい値で Replace() メソッドを呼び出します。 特定の列で値を置き換えることはできますか? はい、IronXLを使用して worksheet.Columns['A'] で列にアクセスし、その列の古い値を新しい値に置き換えるために Replace() メソッドを使用します。 C#プロジェクトがExcelファイルとやりとりできることを保証するにはどうすれば良いですか? IronXLライブラリをダウンロードしてプロジェクトの参照に追加することで、C#プロジェクトがExcelファイルとのインタラクションを容易にすることができます。 .NETでExcelファイルへの書き込み時に多くの一般的な問題は何ですか? 一般的な問題には、IronXLライブラリの参照が正しくない、セルアドレス形式が正しくない、変更の保存の忘れなどがあります。適切な設定と構文を確認してください。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 準備はできましたか? Nuget ダウンロード 1,738,553 | Version: 2025.11 リリース NuGet 無料版 総ダウンロード数: 1,738,553 ライセンスを見る