2012-02-02 51 views
0
protected void Page_Load(object sender, EventArgs e) 
     { 
      try 
      { 
       Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); 

       Microsoft.Office.Interop.Excel.Workbook wb = app.Workbooks.Open(@"D:\Tesco\NGC\Output\temp_02Feb2012.xls", 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); 

       Worksheet sheet = (Worksheet)wb.Sheets["ExpiredAccount"]; 
       Range excelRange = sheet.UsedRange; 
       Range rng1 = sheet.get_Range("A2", "A2"); 
       rng1.Value2 = "India"; 
       Range rng2 = sheet.get_Range("A3", "A3"); 
       rng2.Value2 = "Good work"; 

       // string A4D4 = GetRange("A" + 2 + ":A" + 2 + "", sheet); 

      } 
      catch (Exception ex) 
      { 
       throw ex; 
      } 
     } 

我试图打开一个Excel文件,并要求[ExpiredAccount]。凡我需要在特定的范围内excel文件保存价值的单元格区域

这里设置的值的特定工作表是我的代码但它不仅仅保存价值,它不会抛出任何错误。

请让我知道我要去的地方错了,它会很大,如果你能帮助我在此

感谢 王子

回答

0

你必须保存工作簿。并释放运行时可调用封装器。

只需添加以下代码:

wb.Close(true, Type.Missing, Type.Missing); //closes and saves the workbook 
app.Quit(); 
Marshal.FinalReleaseComObject(app); //release the wrapper 

附:如果你不释放对象,我建议运行任务管理器,查看进程选项卡,并结束所有EXCEL.EXE过程...还有应该是他们中的很多:)

相关问题