将Excel工作表复制到包含格​​式的新工作表 – C#

我需要创build一个能够复制Excel表格的方法,然后将其粘贴到同一个工作簿中的新Excel表格上,但也需要复制格式。

我发现了几个代码,但他们都不复制格式,只有文本。 在我写的代码下面:

// Opening Excel File Microsoft.Office.Interop.Excel.Application excel = null; excel = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(file, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); Microsoft.Office.Interop.Excel.Sheets sheets = workbook.Worksheets; Microsoft.Office.Interop.Excel.Worksheet sheet = (Microsoft.Office.Interop.Excel.Worksheet)sheets.get_Item(1); Microsoft.Office.Interop.Excel.Worksheet sheet2 = (Microsoft.Office.Interop.Excel.Worksheet)sheets.get_Item(2); // Copy the source sheet Object defaultArg = Type.Missing; sheet = (Worksheet)workbook.Sheets[1]; sheet.UsedRange.Copy(defaultArg); // Paste on destination sheet sheet2.UsedRange._PasteSpecial(XlPasteType.xlPasteValues, XlPasteSpecialOperation.xlPasteSpecialOperationNone, false, false); workbook.Save(); common.closeExcel(excel, workbook); 

如果有人有任何build议,请让我知道。

谢谢,

这将使一张表单的一个精确副本更名为原来的新表格:

 Dim x = 2 For numtimes = 1 To x Sheet1.Copy _ After:=Sheet1 Next