Joe*_*uer 5 c# excel interop excel-interop
我想简单地在工作簿中复制一张表并给它一个不同的名称.
var pointName1 = workbook.Worksheets["PointName1"] as Worksheet;
pointName1.Copy(); // How do I access this newly created sheet?
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望能够编写这样的方法
pointName1.CopyTo("New Sheet");
其中"新工作表"是"PointName1"的重命名副本.
有时,PointName1将是工作簿中唯一的工作表,有时则会有其他工作表.
小智 8
您可以通过多种方式实现此目的 - 最简单的方法是在最后一个工作表之后复制,然后使用索引重命名它:
Excel.Application xlApp = Marshal.GetActiveObject("Excel.Application") as Excel.Application;
Excel.Workbook xlWb = xlApp.ActiveWorkbook as Excel.Workbook;
Excel.Worksheet xlSht = xlWb.Sheets[1];
xlSht.Copy(Type.Missing, xlWb.Sheets[xlWb.Sheets.Count]); // copy
xlWb.Sheets[xlWb.Sheets.Count].Name = "NEW SHEET"; // rename
Run Code Online (Sandbox Code Playgroud)
我相信这个MSDN指南也回答了你的问题.
如果要获取工作表的索引,请查找Worksheet.Index属性.
| 归档时间: |
|
| 查看次数: |
16551 次 |
| 最近记录: |