Я пишу содержимое в файл excel через C#. У меня 4 столбца и много строк в excel. Когда приложение запускается, мне нужно проверить, присутствует ли в листе data1, а затем его следует переместить в sheet2. Если sheet2 также содержит данные, тогда он должен быть добавлен с данными sheet2. Я использую interop dll для доступа к excel. Я сделал с написанием содержимого, но как я могу его программно переместить? Это то, что я пробовал.Как переместить данные в sheet1 в sheet2 в excel
Excel.Workbook xlwb;
Excel.Application excelApp = new Excel.Application();
Excel.Worksheet xlssheet1;
Excel.Worksheet xlssheet2;
xlwb = excelApp.Workbooks.Open(myPath, objMissing, objMissing, objMissing, objMissing, objMissing, objMissing,
objMissing, objMissing, objMissing, objMissing, objMissing, objMissing, objMissing, objMissing);
int rowIndex = 2; int colIndex = 1;
if (excelApp.Cells[rowIndex, colIndex] != null)
{
xlssheet1 = (Worksheet)xlwb.Worksheets[1];
xlssheet2 = (Worksheet)xlwb.Worksheets[2];
xlwb.Sheets.Move(System.Reflection.Missing.Value, xlssheet2);
xlwb.Save();
}
я использовал Interop в прошлом и нашел это очень хлопотным. Если вы знаете, что не будете обрабатывать старые файлы excel, я предлагаю вам взглянуть на [OpenXML-библиотеку] (http://msdn.microsoft.com/en-us/library/office/bb448854.aspx) (или упрощенная сторонняя сторона [ClosedXML] (http://closedxml.codeplex.com/)). – Joe