DioDocs for Excelでは、ワークブック間またはワークシート間で、図形、チャート、スライサー、および画像を切り取りまたはコピーすることができます。
コピー操作を実行するには、IRangeインタフェースのCopy()メソッドを使用します。
切り取り操作を実行するには、IRangeインタフェースのCut()メソッドを使用します。
図形、スライサー、チャート、および画像を切り取りまたはコピーする方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
Workbook workbook = new Workbook(); IWorksheet worksheet = workbook.Worksheets[0]; //図形をワークシートに作成し、図形の範囲は範囲["A7:B7"]です IShape shape = worksheet.Shapes.AddShape(AutoShapeType.Rectangle, 1, 1, 100, 100); //範囲["A1:D10"]には範囲["A7:B7"]が含まれ、新しい図形を範囲["C1:F7"]にコピーします worksheet.Range["A1:D10"].Copy(worksheet.Range["C1"]); worksheet.Range["A1:D10"].Copy(worksheet.Range["C1:G9"]); //範囲["A1:D10"]には範囲["A7:B7"]が含まれ、新しい図形を範囲["C1:F7"]に切り取ります worksheet.Range["A1:D10"].Cut(worksheet.Range["C1"]); worksheet.Range["A1:D10"].Cut(worksheet.Range["C1:G9"]); //コピー操作 Workbook workbook1 = new Workbook(); IWorksheet worksheet1 = workbook1.Worksheets[0]; IWorksheet worksheet2 = workbook1.Worksheets.Add(); //図形をワークシートに作成し、図形の範囲は範囲["A7:B7"]です IShape Shape = worksheet.Shapes.AddShape(AutoShapeType.Rectangle, 1, 1, 100, 100); //範囲["A1:D10"]に範囲["A7:B7"]が含まれています。 worksheet2の範囲["C1:F7"]に新しい図形をコピーします worksheet1.Range["A1:D10"].Copy(worksheet2.Range["C1"]); worksheet1.Range["A1:D10"].Copy(worksheet2.Range["C1:G9"]); //範囲["A1:D10"]には範囲["A7:B7"]が含まれ、新しい図形をworksheet2の範囲["C1:F7"]に切り取ります worksheet1.Range["A1:D10"].Cut(worksheet2.Range["C1"]); worksheet1.Range["A1:D10"].Cut(worksheet2.Range["C1:G9"]); |
図形を現在のワークシートに複製するには、IShapeインタフェースのDuplicate()メソッドを使用します。
既存の図形、スライサー、チャート、および画像を複製する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//図形、スライサー、チャート、ピクチャを作成します IShape Shape1 = worksheet.Shapes.AddShape(AutoShapeType.Rectangle, 100, 100, 200, 200); IShape chart = worksheet.Shapes.AddChart(ChartType.ColumnClustered, 200, 300, 300, 300); ISlicerCache cache1 = workbook.SlicerCaches.Add("Category", "cate1"); ISlicer slicer = cache1.Slicers.Add(workbook.Worksheets["Sheet1"], "cate1", "Category", 300, 300, 100, 200); IShape picture = worksheet.Shapes.AddPicture("C:/Pictures", 1, 1, 100, 100); //重複した図形 IShape newShape = Shape1.Duplicate(); //重複したチャート IShape newShape1 = chart.Duplicate(); //重複したスライサー slicer.Shape.Duplicate(); //重複したピクチャ IShape newPicture = picture.Duplicate(); |