ワークブック内およびワークブック間でワークシートをコピーおよび移動する
時には、共通の書式設定およびデータ入力の複数のワークシートが必要なことがあります。例えば、四半期予算を扱う場合、同じ列見出し、行見出し、および数式を含むシートを作成したいかもしれません。これを行う方法があります。1つのシートを作成し、それを3回コピーすることです。
Aspose.Cellsは、ワークブック内またはワークブック間でワークシートを最高の精度でコピーまたは移動する機能をサポートします。データ、書式設定、テーブル、行列、グラフ、画像、その他のオブジェクトを含むワークシートがコピーされます。
ワークシートのコピーおよび移動
ワークブック内のワークシートのコピー
すべての例で最初のステップは同じです。
- Microsoft Excelにデータを含む2つのワークブックを作成します。この例では、Microsoft Excelで新しいワークブックを2つ作成し、ワークシートにデータを入力しました。
- FirstWorkbook.xlsx(3枚のワークシート)。
- SecondWorkbook.xlsx(1枚のワークシート)。
- Aspose.Cellsをダウンロードしてインストールします。
- ダウンロード Aspose.Cells for .NET。
- 開発コンピュータにインストールします。 すべてのAsposeコンポーネントは、インストールされると評価モードで動作します。評価モードには時間制限がなく、生成された文書にウォーターマークしか挿入されません。
- プロジェクトを作成します。
- Visual Studio.Net を起動します。
- 新しいコンソールアプリケーションを作成します。
- 参照を追加します。
- Aspose.Cells をプロジェクトに追加します。 例えば、…\Program Files\Aspose\Aspose.Cells\Bin\Net1.0\Aspose.Cells.dll に参照を追加します。
- ワークブック内のワークシートをコピーします。 最初の例では、FirstWorkbook.xlsx の最初のワークシート(Copy)をコピーします。
このコードを実行すると、ワークシート「Copy」が「Last Sheet」としてFirstWorkbook.xlsx内にコピーされます。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Open a file into the first book. | |
Workbook excelWorkbook1 = new Workbook(dataDir + @"FirstWorkbook.xlsx"); | |
// Copy the first sheet of the first book with in the workbook | |
excelWorkbook1.Worksheets[2].Copy(excelWorkbook1.Worksheets["Copy"]); | |
// Save the file. | |
excelWorkbook1.Save(dataDir + @"FirstWorkbookCopied_out.xlsx"); |
ワークブック内のワークシートを移動
以下のコードは、ワークブック内のワークシートを別の位置に移動する方法を示しています。このコードを実行すると、FirstWorkbook.xlsx内でインデックス1の「Move」という名前のワークシートがインデックス2に移動します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Open a file into the first book. | |
Workbook excelWorkbook2 = new Workbook(dataDir + @"FirstWorkbook.xlsx"); | |
// Move the sheet | |
excelWorkbook2.Worksheets["Move"].MoveTo(2); | |
// Save the file. | |
excelWorkbook2.Save(dataDir + @"FirstWorkbookMoved_out.xlsx"); |
ワークブック間でワークシートをコピーする
このコードを実行すると、「Copy」という名前のワークシートがSecondWorkbook.xlsxに「Sheet2」としてコピーされます。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Open a file into the first book. | |
Workbook excelWorkbook3 = new Workbook(dataDir + @"FirstWorkbook.xlsx"); | |
// Open a file into the second book. | |
Workbook excelWorkbook4 = new Workbook(dataDir + @"SecondWorkbook.xlsx"); | |
// Add new worksheet into second Workbook | |
excelWorkbook4.Worksheets.Add(); | |
// Copy the first sheet of the first book into second book. | |
excelWorkbook4.Worksheets[1].Copy(excelWorkbook3.Worksheets["Copy"]); | |
// Save the file. | |
excelWorkbook4.Save(dataDir + @"CopyWorksheetsBetweenWorkbooks_out.xlsx"); |
ワークブック間でワークシートを移動する
このコードを実行すると、「Move」という名前のワークシートがFirstWorkbook.xlsx から「Sheet3」の名前でSecondWorkbook.xlsxに移動します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Open a file into the first book. | |
Workbook excelWorkbook5 = new Workbook(dataDir + @"FirstWorkbook.xlsx"); | |
//Create another Workbook. Open a file into the Second book. | |
Workbook excelWorkbook6 = new Workbook(dataDir + @"SecondWorkbook.xlsx"); | |
//Add New Worksheet | |
excelWorkbook6.Worksheets.Add(); | |
//Copy the sheet from first book into second book. | |
excelWorkbook6.Worksheets[2].Copy(excelWorkbook5.Worksheets[2]); | |
//Remove the copied worksheet from first workbook | |
excelWorkbook5.Worksheets.RemoveAt(2); | |
//Save the file. | |
excelWorkbook5.Save(dataDir + @"FirstWorkbookWithMove_out.xlsx"); | |
//Save the file. | |
excelWorkbook6.Save(dataDir + @"SecondWorkbookWithMove_out.xlsx"); |