Мне нужно создать один метод, который он сможет скопировать лист Excel, а затем вставить его на новый лист excel в той же книге, но необходимо скопировать форматирование также.Скопируйте лист Excel на новый лист, включая форматирование - C#
Я нашел несколько кодов, но все они не копируют форматирование, а только текст. ниже код, который я написал:
// 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);
Если кто имеет какие-либо предложения, пожалуйста, дайте мне знать.
Спасибо,
Пробовали ли вы/прочитать о различных значениях '' XlPasteType'and XlPasteSpecialOperation '? – DrKoch
Спасибо DrKoch, я изменил XlPasteType.xlPasteValues на XlPasteType.xlPasteAllUsingSourceTheme и работал лучше. – Felipe