我将数据从一个位置复制到另一个位置,并且能够读取和打印所有值,并且能够在Excel文件中附加三列。因此,现在A,B,C柱成为d,E,F(变速)等。追加三列后将数据写入错误位置
Excel.Application app = new Excel.Application();
Excel.Workbooks workbooks = app.Workbooks;
string newlocation_filename = @"C:\Windows\Temp\" + FileName;
File.Copy(FilePath, newlocation_filename, true);
//string filename = FilePath;
workbooks.Open(newlocation_filename);
Excel.Workbook workbook = workbooks.Item[1];
Excel.Sheets worksheets = workbook.Worksheets;
Excel.Worksheet worksheet = (Worksheet)worksheets.Item[1];
Excel.Range cells = worksheet.UsedRange;
Range oRng = worksheet.Range["A1"];
oRng.EntireColumn.Insert(XlInsertShiftDirection.xlShiftToRight,XlInsertFormatOrigin.xlFormatFromRightOrBelow);
oRng = worksheet.Range["B1"];
oRng.EntireColumn.Insert(XlInsertShiftDirection.xlShiftToRight,XlInsertFormatOrigin.xlFormatFromRightOrBelow);
oRng = worksheet.Range["C1"];
oRng.EntireColumn.Insert(XlInsertShiftDirection.xlShiftToRight,XlInsertFormatOrigin.xlFormatFromRightOrBelow);
cells[1, 1] = "AccountNumber";//Set value for row 1 and column 2 (A1)
cells[1, 2] = "CustomerName";
cells[1, 3] = "ComparisionResult";//Set value for row 1 and column 3 (B1)
workbook.Save();//Save Excel-File
app.Quit();
}
从上面的代码AccountNumber
,CustomerName
,ComparisionResult
都需要在A1设置,B1,C1细胞(所附新栏目)。但是 它代替了D1,E1,F1(旧的A1,B1,C1意味着在追加之前)字段值中的数据,并且A1,B1,C1字段值没有更新。我认为它取代了数据,然后追加正在发生。
任何Update语句都需要解决这个问题?
谢谢您的回复。我只用了固定的位置[1,1],[1,2],[1,3]。未使用usedRange.cell [1,1]。 –
可以请你回来吗? –
您设置了'cells' ='worksheet.UsedRange',所以'cells [1,1]'是* UsedRange *中的左上角单元格,并且不一定是*工作表中的左上角单元格。 –