IronXL ハウツー セルをコピー C#でセルをコピーする方法 with IronXL Chaknith Bin 更新日:1月 10, 2026 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English IronXLはExcelスプレッドシートのセル、範囲、行、列を単一のCopyメソッドでコピーすることができます。 セルのコピー"機能は、セルの内容を複製し、他のセルに貼り付けます。 ワークシート内のデータ、数式、書式、その他の属性を複製します。 Whether creating spreadsheets from scratch or loading existing Excel files, the copy functionality is essential for efficient data manipulation. 見出し:2(クイックスタート: 1行で列または範囲をコピー) 単一のセル、行、列、またはブロックなどの範囲全体を、1つのメソッド呼び出しでシートから別のシートにコピーします。 Copy 関数は、Excel の自動化を迅速かつシンプルにする一方で、スタイルと書式を保持します。 今すぐ NuGet で PDF を作成してみましょう: NuGet パッケージ マネージャーを使用して IronXL をインストールします PM > Install-Package IronXL.Excel このコード スニペットをコピーして実行します。 workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); 実際の環境でテストするためにデプロイする 今すぐ無料トライアルでプロジェクトに IronXL を使い始めましょう 30日間無料トライアル 最小限のワークフロー(5ステップ) セルをコピーするためのC#ライブラリをダウンロードする 既存のExcelスプレッドシートをロードする コピーしたい範囲、行、または列を選択してください Invoke the `Copy` method on the selected range Pass a destination worksheet and position to the `Copy` method Excelで1つのセルをコピーするには? 選択したセルの内容をコピーするには、Copyメソッドを使用します。 ワークシートオブジェクトを最初のパラメーターとして渡し、開始位置を2番目のパラメーターとして渡します。 The Copy method retains all styling including font and size, background patterns and colors, and borders and alignment. :path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-single-cell.cs using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy cell content workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3"); workBook.SaveAs("copySingleCell.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy cell content workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3"); workBook.SaveAs("copySingleCell.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy cell content workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3"); workBook.SaveAs("copySingleCell.xlsx"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel コピー時に保存される書式は何ですか? Copy メソッドは、以下のようなすべてのセル プロパティを保持します: セルの値と数式 数値フォーマット(通貨、パーセンテージ、日付) フォントスタイリング(書体、サイズ、太字、斜体、色) セルの枠線と背景色 テキストアライメント(水平および垂直) セル保護設定 この包括的な保存により、Microsoft ExcelでC#とCtrl+Vを使用するのと同様に、コピーされたセルが元の外観と機能を維持することが保証されます。 なぜコピー メソッドは 2 つのパラメータを取るのですか Copyメソッドは、正確な制御のために2つのパラメータを必要とします: 1.ワークシートパラメータ: 移動先のワークシートを指定します。 2.アドレスパラメータ:貼り付けられたコンテンツのセル開始位置を定義します。 このデザインでは、同じシート内または異なるシート間で柔軟にコピーできるため、サマリーレポートの作成や複数のソースからのデータの統合に最適です。 シングルセルコピーと範囲コピーのどちらを使うべきか 次のような場合は、シングルセルコピーを選択してください: 個々の値や数式の複製 ヘッダーセルやラベルのコピー 特定の計算結果の複製 要約値での作業 以下のような場合にレンジコピーを使用してください: データテーブル全体の移動 関連する複数のセルの複製 完全な行または列のコピー データ関係の保持 複数のセルまたは範囲をコピーするにはどうすればよいですか? Like the Clear method, Copy is available in the Range class, allowing execution on any range size. When selecting ranges, IronXL provides flexible copying options: 1つのセル(C10)をコピーしてください: workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13"); workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13"); workSheet("C10").Copy(workBook.GetWorkSheet("Sheet1"), "B13") $vbLabelText $csharpLabel 列(A)をコピーしてください: workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1") $vbLabelText $csharpLabel 行をコピーしてください (4): workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15"); workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15"); workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15") $vbLabelText $csharpLabel 2次元の範囲(D6:F8)をコピーしてください: workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17"); workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17"); workSheet("D6:F8").Copy(workBook.GetWorkSheet("Sheet1"), "H17") $vbLabelText $csharpLabel ご注意2 番目のパラメータは、データ入力の開始点を示すアドレス位置を受け入れます。 コピーされたデータはそのアドレスから始まり、右方向と下方向に広がります。 :path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-cell-range.cs using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy a single cell(C10) workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13"); // Copy a column(A) workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); // Copy a row(4) workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15"); // Copy a two-dimensional range(D6:F8) workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17"); workBook.SaveAs("copyCellRange.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy a single cell(C10) workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13"); // Copy a column(A) workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); // Copy a row(4) workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15"); // Copy a two-dimensional range(D6:F8) workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17"); workBook.SaveAs("copyCellRange.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy a single cell(C10) workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13"); // Copy a column(A) workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1"); // Copy a row(4) workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15"); // Copy a two-dimensional range(D6:F8) workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17"); workBook.SaveAs("copyCellRange.xlsx"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 宛先範囲が小さすぎるとどうなりますか IronXLは自動的にサイズの違いを処理します: destinationパラメータは、左上の開始セルのみを指定します。 翻訳先のサイズに関係なく、ソースの全範囲をコピーすること。 翻訳先の既存データは上書きされます。 コピー操作は、すべてのソースデータに対応するように拡張されます。 例えば、3x3の範囲をセルB1にコピーすると、既存の内容を上書きしてセルB1:D3に入力されます。 行と列の参照はどのように機能しますか? IronXLはGetRow()とGetColumn()メソッドで行と列にゼロベースのインデックスを使用します: GetColumn(0)はA列を参照します。 GetColumn(1)はB列を参照します。 GetRow(0)は1行目を参照しています。 GetRow(3)は4行目を参照しています。 このインデックス付けは、標準的な C# 配列の規約に沿ったものです。 なぜGetColumn()メソッドとGetRow()メソッドを使用するのですか? GetColumn()とGetRow()メソッドが提供するものです: パフォーマンス:行または列全体に対してより効率的 明確さ:コードの意図をより明確に 柔軟性:すべての範囲演算をサポートする Range オブジェクトを返します。 利便性:全選択肢の端のセルを計算する必要はありません。 これらの方法は、列の完全なコピーを必要とするレポートを作成する場合や、行のテンプレートを複製する場合に優れています。 異なるワークシート間でセルをコピーするには? 最初のパラメータはワークシートオブジェクトを受け入れ、異なるワークシート間でのコピー&ペーストを可能にします。 最初のパラメータとして、別のワークシートオブジェクトを渡してください。 This functionality proves essential when managing multiple worksheets or creating summary sheets from detailed data. ご注意次の例では、Copy メソッドの最初のパラメータは "Sheet2" ワークシートです: workBook.GetWorksheet("Sheet2") :path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-to-other-worksheet.cs using IronXL; WorkBook workBook = WorkBook.Load("multisheet.xlsx"); WorkSheet sheet1 = workBook.GetWorkSheet("Sheet1"); WorkSheet sheet2 = workBook.GetWorkSheet("Sheet2"); // Copy entire data range from Sheet1 to Sheet2 sheet1["A1:D10"].Copy(sheet2, "A1"); // Copy with formulas intact sheet1["E1:E10"].Copy(sheet2, "F1"); // Copy formatting from template sheet WorkSheet templateSheet = workBook.GetWorkSheet("Template"); templateSheet["A1:Z1"].Copy(sheet2, "A15"); workBook.SaveAs("crossSheetCopy.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Copy cell content workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet2"), "B3"); workBook.SaveAs("copyAcrossWorksheet.xlsx"); using IronXL; WorkBook workBook = WorkBook.Load("multisheet.xlsx"); WorkSheet sheet1 = workBook.GetWorkSheet("Sheet1"); WorkSheet sheet2 = workBook.GetWorkSheet("Sheet2"); // Copy entire data range from Sheet1 to Sheet2 sheet1["A1:D10"].Copy(sheet2, "A1"); // Copy with formulas intact sheet1["E1:E10"].Copy(sheet2, "F1"); // Copy formatting from template sheet WorkSheet templateSheet = workBook.GetWorkSheet("Template"); templateSheet["A1:Z1"].Copy(sheet2, "A15"); workBook.SaveAs("crossSheetCopy.xlsx"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 一般的なクロスワークシートコピーシナリオとは このようなシナリオでは、ワークシート間のコピーが頻繁に使用されます: 1.サマリーシートの作成:詳細シートからダッシュボードに主要なメトリクスをコピーする 2.テンプレートの複製:フォーマットされたテンプレートを新しいワークシートにコピーします。 3.データ統合:各部門のシートからマスターシートにデータを集める。 4.レポート作成:フィルタリングされた結果を別のレポートワークシートにコピーします。 5.バックアップ操作:重要なデータをバックアップシートに複製する When working with formulas that reference other cells, IronXL automatically adjusts relative references based on the new location while maintaining absolute references. 新しいワークシートと既存のワークシートでは、いつコピーすべきですか? 以下の場合、新しいワークシートにコピーしてください:。 定期レポートの作成(日次、週次、月次) 生データから加工データを分離する ソースデータからの分析ワークシートの構築 ユーザー固有のデータビューの生成 以下の場合、既存のワークシートにコピーしてください:。 進行中のログにデータを追加する ダッシュボードセクションの更新 複数のデータソースの統合 履歴記録の管理 For complex scenarios involving multiple sheets, consider using IronXL's ability to work with DataSets and DataTables for sophisticated data manipulation. ワークシートの名前の競合をどのように処理しますか? ワークシート間でコピーする際に、適切なワークシート管理を行うこと: // Check if worksheet exists before copying if (workBook.GetWorkSheet("TargetSheet") == null) { workBook.CreateWorkSheet("TargetSheet"); } // Safe copy operation WorkSheet targetSheet = workBook.GetWorkSheet("TargetSheet"); sourceSheet["A1:Z100"].Copy(targetSheet, "A1"); // Check if worksheet exists before copying if (workBook.GetWorkSheet("TargetSheet") == null) { workBook.CreateWorkSheet("TargetSheet"); } // Safe copy operation WorkSheet targetSheet = workBook.GetWorkSheet("TargetSheet"); sourceSheet["A1:Z100"].Copy(targetSheet, "A1"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel このアプローチは、ランタイムエラーを防ぎ、本番環境でExcelプロセスを自動化する場合に特に重要なコピー操作を確実に成功させます。 よくある質問 C# を使用して Excel で 1 つのセルをコピーするにはどうすればよいですか? IronXLではCopyメソッドを使って一つのセルをコピーすることができます。コピーしたいセル(例えばworkSheet["A1"])を選択し、コピー先のワークシートとコピー先のセルアドレスをパラメータとしてCopyメソッドを呼び出すだけです。IronXLはコピー操作の間、フォント、色、枠線、数式を含むすべての書式を保持します。 セルをコピーする際、どのような書式が保持されますか? IronXLのコピーメソッドは、セルの値や数式、数値フォーマット(通貨、パーセンテージ、日付)、フォントスタイル(書体、サイズ、太字、斜体、色)、セルの境界線と背景色、テキストの配置(水平方向と垂直方向)、セルの保護設定を含むすべてのセルプロパティを保持します。これにより、コピーされたセルは元の外観と機能を維持します。 列や範囲全体を一度にコピーできますか? はい、IronXLでは一回の操作で列、行、範囲全体をコピーすることができます。GetColumn(0).Copy()のようなメソッドを使って列全体をコピーしたり、セル範囲を選択して複数のセルを一度にコピーすることができます。Copy メソッドは、単一のセルからワークシート全体まで、どのような選択サイズでも動作します。 異なるワークシート間でセルをコピーする方法を教えてください。 IronXLではワークシート間のセルのコピーが簡単にできます。Copyメソッドを使用する場合、最初のパラメータとしてコピー先のワークシートを指定し(例えば、workBook.GetWorkSheet("Sheet2"))、2番目のパラメータとしてコピー先のセル・アドレスを指定します。これにより、同じワークブック内の異なるシート間でデータをコピーできます。 Excelでセルをコピーするために最低限必要な手順は何ですか? IronXLを使えば、セルのコピーはわずか5ステップで完了します:1) IronXL C#ライブラリをダウンロードする、2) 既存のExcelスプレッドシートを読み込む、3) コピーしたい範囲、行、列を選択する、4) 選択した範囲でCopyメソッドを呼び出す、5) コピー先のワークシートと位置をCopyメソッドに渡す。すべての操作は、1行のコードで行うことができます。 Chaknith Bin 今すぐエンジニアリングチームとチャット ソフトウェアエンジニア ChaknithはIronXLとIronBarcodeに取り組んでいます。彼はC#と.NETの深い専門知識を持ち、ソフトウェアの改善や顧客サポートに貢献しています。ユーザーとの対話から得られる洞察が、より良い製品、ドキュメント、および全体的な経験に寄与しています。 準備はできましたか? Nuget ダウンロード 1,765,830 | バージョン: 2025.12 リリース NuGet 無料版 総ダウンロード数: 1,765,830 ライセンスを見る