チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル».NET»Spire.XLS for .NET»ワークシート»C#/VB.NET:Excel でワークシートをコピーする方法
2022-06-21

C#/VB.NET:Excel でワークシートをコピーする方法

Excel コピー機能を使用すると、Excel ブック内のワークシートをコピーできるだけでなく、異なる Excel ブック間でワークシートをコピーすることもできます。 この記事では、C#、VB.NET の Spire.XLS for .NET を介して、1つの Excel ワークブック内およびさまざまなワークブック間でワークシートをコピーするためのソリューションを紹介します。さらに、元の Excel ワークシートのすべてのセル形式が完全に残ることができます。

Spire.XLS for.NET をインストールします

まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.XLS

Excel ワークブック内のワークシートをコピーする

以下は、Excel ブック内でワークシートをコピーする手順です。

  • Workbook クラスのインスタンスを初期化します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルをロードします。
  • WorksheetCollection.Add() メソッドを使用して、新しい空白のシートをブックに追加します。
  • Worksheet.CopyFrom() メソッドを使用して、元のワークシートを新しいシートにコピーします。
  • Workbook.SaveToFile() メソッドを使用して、変更を別のファイルに保存します。
  • C#
  • VB.NET
using Spire.Xls;

namespace CopyExcelworksheet
{
    class Program
    {
        static void Main(string[] args)
        {
            //サンプルExcelをロードする
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");

            //ワークシートを追加し、その名前を設定する
            workbook.Worksheets.Add("Sheet1_Copy");

            //ワークシートを新しく追加されたワークシートにコピーする
            workbook.Worksheets[1].CopyFrom(workbook.Worksheets[0]);

            //Excelブックを保存する
            workbook.SaveToFile("Duplicatesheet.xlsx", ExcelVersion.Version2013);
            System.Diagnostics.Process.Start("Duplicatesheet.xlsx");

        }
    }
}
Imports Spire.Xls
 
Namespace CopyExcelworksheet
    Class Program
        Shared  Sub Main(ByVal args() As String)
            'サンプルExcelをロードする
            Dim workbook As Workbook =  New Workbook() 
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
 
            'ワークシートを追加し、その名前を設定する
            workbook.Worksheets.Add("Sheet1_Copy")
 
            'ワークシートを新しく追加されたワークシートにコピーする
            workbook.Worksheets(1).CopyFrom(workbook.Worksheets(0))
 
            'Excelブックを保存する
            workbook.SaveToFile("Duplicatesheet.xlsx", ExcelVersion.Version2013)
            System.Diagnostics.Process.Start("Duplicatesheet.xlsx")
 
        End Sub
    End Class
End Namespace

C#/VB.NET:Excel でワークシートをコピーする方法

Excel ワークブック間でワークシートをコピーする

以下は、Excel ブック内でワークシートを複製する手順です。

  • Workbook クラスのインスタンスを初期化します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルをロードします。
  • 最初のワークシートを入手します。
  • 別の Excel サンプルドキュメントを読み込む
  • WorksheetCollection.Add() メソッドを使用して、2番目のブックに新しい空白のシートを追加します。
  • Worksheet.CopyFrom() メソッドを使用して、元のワークシートを新しいシートにコピーします。
  • Workbook.SaveToFile() メソッドを使用して、変更を別のファイルに保存します。
  • C#
  • VB.NET
using Spire.Xls;

namespace CopyExcelworksheet
{
    class Program
    {
        static void Main(string[] args)
        {
            //サンプルExcelをロードし、最初のワークシートを取得する
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx");
            Worksheet sheet = workbook.Worksheets[0];
            //2番目のExcelブックをロードする
            Workbook workbook2 = new Workbook();
            workbook2.LoadFromFile("C:\\Users\\Administrator\\Desktop\\New.xlsx");
            //新しいワークシートを追加し、その名前を設定する
            Worksheet targetWorksheet = workbook2.Worksheets.Add("added");
            //元のワークシートを新しく追加されたワークシートにコピーする
            targetWorksheet.CopyFrom(sheet);
            //Excelブックを保存する
            workbook2.SaveToFile("CopySheetBetweenWorkbooks.xlsx", FileFormat.Version2013);
            System.Diagnostics.Process.Start("CopySheetBetweenWorkbooks.xlsx");

        }
    }
}
Imports Spire.Xls
 
Namespace CopyExcelworksheet
    Class Program
        Shared  Sub Main(ByVal args() As String)
            'サンプルExcelをロードし、最初のワークシートを取得する
            Dim workbook As Workbook =  New Workbook() 
            workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.xlsx")
            Dim sheet As Worksheet =  workbook.Worksheets(0) 
            '2番目のExcelブックをロードする
            Dim workbook2 As Workbook =  New Workbook() 
            workbook2.LoadFromFile("C:\\Users\\Administrator\\Desktop\\New.xlsx")
            '新しいワークシートを追加し、その名前を設定する
            Dim targetWorksheet As Worksheet =  workbook2.Worksheets.Add("added") 
            '元のワークシートを新しく追加されたワークシートにコピーする
            targetWorksheet.CopyFrom(sheet)
            'Excelブックを保存する
            workbook2.SaveToFile("CopySheetBetweenWorkbooks.xlsx", FileFormat.Version2013)
            System.Diagnostics.Process.Start("CopySheetBetweenWorkbooks.xlsx")
 
        End Sub
    End Class
End Namespace

C#/VB.NET:Excel でワークシートをコピーする方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 5630 times