Копирование ячеек Excel - C#
Формулировка задачи:
Доброго дня, столкнулся с проблемой, не могу понять почему выпадает исключение, собственно есть код, который открывает 2 Excel файла и из одного листа файла 1, копирует данные в другой файл (Excel 2013):
Собственно вопрос, что я делаю не так?
Само исключение такое:
Microsoft.Office.Interop.Excel.Application ObjWorkExcelInput = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook ObjWorkBookInput = ObjWorkExcelInput.Workbooks.Open(textBoxPromotionalSales.Text, 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.Worksheet ObjWorkSheetInput = (Microsoft.Office.Interop.Excel.Worksheet)ObjWorkBookInput.Sheets["Promotional-Sales"];
Microsoft.Office.Interop.Excel.Application ObjWorkExcelOutput = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook ObjWorkBookOutput = ObjWorkExcelOutput.Workbooks.Open(@"C:\Users\pnavitsk\Desktop\Работа\Выходной файл (тестовый)", 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.Worksheet ObjWorkSheetOutput = (Microsoft.Office.Interop.Excel.Worksheet)ObjWorkBookOutput.Sheets["Promotional sales"];
var lastCell = ObjWorkSheetInput.Cells.SpecialCells(Microsoft.Office.Interop.Excel.XlCellType.xlCellTypeLastCell);
try
{
ObjWorkSheetOutput.Cells.Clear();
for (int i = 1; i < (int)lastCell.Row; i++)
for (int j = 1; i < (int)lastCell.Column; j++)
ObjWorkSheetOutput.Cells[i, j].Value2 = ObjWorkSheetInput.Cells[i, j].Value2;
//ObjWorkBookOutput.Sheets["Promotional sales"].Copy(Before: ObjWorkBookInput.Sheets["Promotional-Sales"]);
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
finally
{
ObjWorkBookInput.Close(false, Type.Missing, Type.Missing);
ObjWorkBookOutput.Close(true, Type.Missing, Type.Missing);
ObjWorkExcelInput.Quit(); ObjWorkExcelOutput.Quit(); GC.Collect();
}Решение задачи: «Копирование ячеек Excel»
textual
Листинг программы
for (int i = 1; i < (int)lastCell.Row; i++)
for (int j = 1; j < (int)lastCell.Column; j++)
{
ObjWorkSheetOutput.Cells[i, j] = ObjWorkSheetInput.Cells[i, j];
}