ワークシートのコピー機能は、類似した構造とフォーマットを持つシートを作成するためによく使用されます。これにより、繰り返し入力と書式設定の時間を大幅に削減することもできます。Free Spire.XLS for.NETライブラリは、同じワークブック内のシートのコピーと、異なるワークブック間のシートのコピーをサポートします。具体的なコピー方法とコードは以下を参照してください。
Free Spire.XLS for .NETをインストールする
方法1:NuGetでFree Spire.XLS for .NETをインストールする
Visual Studioを開いて新しいプロジェクトを作成します。次に、「Solution Explorer」で「References」を右クリックし、「Nuget Manage Packages」を選択します。Free Spire.XLS for .NETを検索してインストールします。
方法2:手動でSpire.xls.dllを追加する
Free Spire.XLS for .NETをローカルにダウンロードしインストールします。次に、Visual Studioて新しいプロジェクトを作成し、右側の「Solution Explorer」で「References」を右クリックし、「Add Reference」>「Browse」を選択して、インストールパス下のBINフォルダのdllファイルを見つけ、「OK」をクリックして、プログラムに参照を追加します。
ワークブックでシートをコピーする
- Workbook クラスのインスタンスを初期化します。
- Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
- WorksheetCollection.Add() メソッドを使用して、新しい空白のシートをブックに追加します。
- Worksheet.CopyFrom() メソッドを使用して、元のワークシートを新しいシートにコピーします。
- Workbook.SaveToFile() メソッドを使用して、変更を別のファイルに保存します。
C#:
using Spire.Xls;
namespace CopyExcelworksheet
{
class Program
{
static void Main(string[] args)
{
//サンプルExcelを読み込む
Workbook workbook = new Workbook();
workbook.LoadFromFile("sample1.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");
}
}
}
VB.Net:
Imports Spire.Xls
Namespace CopyExcelworksheet
Class Program
Shared Sub Main(ByVal args() As String)
'サンプルExcelを読み込む
Dim workbook As Workbook = New Workbook()
workbook.LoadFromFile("sample1.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
ワークブック間のシートをコピーする
- Workbook クラスのインスタンスを初期化します。
- Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
- 最初のワークシートを入手します。
- 別の Excel サンプルドキュメントを読み込む
- WorksheetCollection.Add() メソッドを使用して、2番目のブックに新しい空白のシートを追加します。
- Worksheet.CopyFrom() メソッドを使用して、元のワークシートを新しいシートにコピーします。
- Workbook.SaveToFile() メソッドを使用して、変更を別のファイルに保存します。
C#:
using Spire.Xls;
namespace CopyExcelworksheet
{
class Program
{
static void Main(string[] args)
{
//サンプルExcelを読み込む、最初のワークシートを取得する
Workbook workbook = new Workbook();
workbook.LoadFromFile("sample1.xlsx");
Worksheet sheet = workbook.Worksheets[0];
//2番目のExcelブックを読み込む
Workbook workbook2 = new Workbook();
workbook2.LoadFromFile("sample2.xlsx");
//新しいワークシートを追加し、その名前を設定する
Worksheet targetWorksheet = workbook2.Worksheets.Add("added");
//元のワークシートを新しく追加されたワークシートにコピーする
targetWorksheet.CopyFrom(sheet);
//Excelブックを保存する
workbook2.SaveToFile("CopySheetBetweenWorkbooks.xlsx", FileFormat.Version2013);
System.Diagnostics.Process.Start("CopySheetBetweenWorkbooks.xlsx");
}
}
}
VB.Net:
Imports Spire.Xls
Namespace CopyExcelworksheet
Class Program
Shared Sub Main(ByVal args() As String)
'サンプルExcelを読み込む、最初のワークシートを取得する
Dim workbook As Workbook = New Workbook()
workbook.LoadFromFile("sample1.xlsx")
Dim sheet As Worksheet = workbook.Worksheets(0)
'2番目のExcelブックを読み込む
Dim workbook2 As Workbook = New Workbook()
workbook2.LoadFromFile("sample2.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