在我的应用程序中,我希望能够打开一个已经存在的Excel文件,并向该文件添加信息。我使用Microsoft Interop库。我注意到,如果使用Add创建新的电子表格,然后Saveas可以将文件设置为独占模式,直到关闭Excel应用程序。
但是,当打开现有文件时,我还没有找到同样的方法。我之所以这样做,是因为如果我在应用程序打开的情况下打开Excel文件,那么会出现异常。我认为当我使用Excel打开Excel文件时,它会自动以独占模式打开。
我考虑打开文件,然后使用saveas,但它没有起作用。
我收到的异常是COMException,"Exception from HRESULT: 0x800401A8"。
但是,当打开现有文件时,我还没有找到同样的方法。我之所以这样做,是因为如果我在应用程序打开的情况下打开Excel文件,那么会出现异常。我认为当我使用Excel打开Excel文件时,它会自动以独占模式打开。
我考虑打开文件,然后使用saveas,但它没有起作用。
private object missing=Type.Missing;
workbook = workbooks.Open(excelfilename,missing, false, missing, missing, missing,missing,missing,missing,missing,false, missing,missing, missing, missing);
workbook.SaveAs((String)excelfilename, missing, missing, missing, missing, missing, Excel.XlSaveAsAccessMode.xlExclusive, Excel.XlSaveConflictResolution.xlLocalSessionChanges, missing, missing, missing, missing);
我在代码后面收到了异常:
Excel.Range testrange = sheet.get_Range(rangetext);
我收到的异常是COMException,"Exception from HRESULT: 0x800401A8"。
Excel.Application
实例,还是只有一个? - code4life