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