2

ボタンをクリックするとExcelシートが開き、データが挿入されるアプリケーションがあります。データを挿入する前にExcelシートを閉じると、例外が発生します..
HRESULTからの例外: 0x800401A8

これを処理する方法はありますか。私のコードは

   Excel.Application objApp = null;
        Excel._Workbook objBook = null;
        Excel.Workbooks objBooks = null;
        Excel.Worksheet workSheet = null;

        objApp = new Excel.Application();
        objBooks = objApp.Workbooks;

        objBook = objBooks.Open(path, 2, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", true, false, 0, true);
        objBook.Activate();
        objApp.Visible = true;
        workSheet = (Excel.Worksheet)objBook.Worksheets[1];

        //sqlQueryForShoppingCenter.Append(" select shp_ctr_id,ctr_name,addr_city,addr_line1 from shp_ctr where shp_ctr_id='SCL00002' ");

        sqlQueryForShoppingCenter.Append(" select Shp_ctr_id,Ctr_Name,addr_city,Addr_line1 from shp_ctr  where shp_ctr_id='68729'");
        using (OracleDataReader reader1 = SqlStatementUtil.ExecuteReader(sqlQueryForShoppingCenter.ToString()))
        {
            while (reader1.Read())
            {
                if (workSheet != null)
                {
                    workSheet.Cells[4, 6] = reader1["Shp_ctr_id"].ToString();
                    workSheet.Cells[5, 6] = reader1["Ctr_Name"].ToString();
                    workSheet.Cells[6, 6] = reader1["addr_city"].ToString();
                    workSheet.Cells[7, 6] = reader1["Addr_line1"].ToString();
                }
            }
        }

Excel が閉じていない場合、データは正常に挿入されます。しかし、データを挿入する前にエクセルを閉じてしまった場合、挿入をスキップしたいのですが、どうすればよいのでしょうか...

いろいろ条件をつけて対処してみました..助けてください

4

0 に答える 0