次程序是web程序public static void ExportToExcel(DataSet ds, string fileStrName) 
        { 
            Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.ApplicationClass();             if (excel == null)             {                 //MessageBox.Show("Excel无法启动", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);             }             int rowindex = 2;             int colindex = 0;             excel.Application.Workbooks.Add(true);             System.Data.DataTable dt = ds.Tables[0];             Microsoft.Office.Interop.Excel.Range range = excel.get_Range(excel.Cells[1, 1], excel.Cells[1, dt.Columns .Count]);             range.MergeCells = true;             excel.ActiveCell.FormulaR1C1 =fileStrName;             excel.ActiveCell.Font.Size = 18;             excel.ActiveCell.Font.Bold = true;                      foreach (DataColumn col in dt.Columns)             {                 colindex=colindex +1;                 excel.Cells[2, colindex] = col.ColumnName;             }             foreach (DataRow row in dt.Rows)             {                 colindex = 0;                 rowindex++;                 foreach (DataColumn col in dt.Columns)                 {                     colindex++;                     excel.Cells[rowindex, colindex] = row[col.ColumnName].ToString();                 }             }             excel.get_Range(excel.Cells[1, 1], excel.Cells[1, dt.Columns.Count]).Font.Bold = true;             excel.get_Range(excel.Cells[1, 1], excel.Cells[rowindex, colindex]).Borders.LineStyle = 0;             excel.Cells.EntireColumn.AutoFit();             excel.Cells.VerticalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;             excel.Cells.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;             try             { 
                excel.DisplayAlerts = false; 
                excel.Visible = false; 
                //excel.DisplayAlerts =false; 
                excel.AlertBeforeOverwriting = true; 
                excel.Save(fileStrName); 
                                            }             catch { }             finally             {                 excel.Quit();                 excel = null;             }         } 
运行到 excel.Save(fileStrName);是总是弹出另存为对话框,怎么解决

解决方案 »

  1.   

                    //设置禁止弹出保存和覆盖的询问提示框
                    app.DisplayAlerts = false;
                    app.AlertBeforeOverwriting = false;
      

  2.   

    excel.AlertBeforeOverwriting = true; false
      

  3.   

    使用SaveAssheet.SaveAs(strName, miss, miss, miss, miss, miss, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, miss, miss, miss);
    book.Close(false, miss, miss);
    books.Close();
    excel.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(book); System.Runtime.InteropServices.Marshal.ReleaseComObject(books);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
    GC.Collect();
      

  4.   

    上面的saveas函数找不到,弄不成,还有没有其他的方法
      

  5.   


    app.DisplayAlerts = false; 
    app.AlertBeforeOverwriting = false;这个可以