Excel.Application myExcel=new Excel.ApplicationClass();
myExcel.Application.Workbooks.Add(true);
myExcel.Visible=true;
int rowIndex=1;
int colIndex=0;
this.table=ado.exSqlReturnTable("select * from FAQ");
foreach(DataColumn col in this.table.Columns)
{
colIndex++;
myExcel.Cells[1,colIndex]=col.ColumnName;
}foreach(DataRow row in table.Rows)
{
colIndex=0;
rowIndex++;
foreach(DataColumn col in table.Columns)
{
colIndex++;
myExcel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();
}
}
//////////////////////////以上都没有问题
try
{
myExcel.Save("E:\a.xls");////此处异常
}
catch(Exception ex)
{
Trace.WriteLine(ex.ToString());
}

解决方案 »

  1.   

    myExcel.Save("E:\a.xls");////此处异常改为 myExcel.Save(@"E:\a.xls");////此处异常
      

  2.   

    如果要打开一个已存在的xls文件,该改哪一行?
    private void button1_Click(object sender, System.EventArgs e)
    {
    Excel.Application myExcel=new Excel.ApplicationClass();
    myExcel.Application.Workbooks.Add (true);
    myExcel.Visible=true;


    SqlConnection sqlConn = new SqlConnection ("server=HCSZNET20204;database=TTEST;uid=sa;pwd=");
    sqlConn.Open();
    SqlCommand sqlCmd = new SqlCommand("select * from xtank", sqlConn);
    SqlDataReader sqlDataReader = sqlCmd.ExecuteReader();
    int rowIndex=2;  //rowIndex是行号 colIndex是列号
    bool myBool;  //验证是否读到了最后一行数据的最后
    myBool=sqlDataReader.Read (); ////////////////////
    //显示字段名,即列名
    for(int colIndex=1;colIndex<=sqlDataReader.FieldCount ;++colIndex)
    myExcel.Cells [1,colIndex]=sqlDataReader.GetName (colIndex-1);
    //////////////////// while(myBool==true)
    {
    for(int colIndex=1;colIndex<=sqlDataReader.FieldCount ;++colIndex)
    myExcel.Cells [rowIndex,colIndex]=sqlDataReader.GetValue(colIndex-1);
    ++rowIndex;
    myBool=sqlDataReader.Read ();
    }
                           }
      

  3.   

    如何用C#打开一个已存在的xls文件?
      

  4.   

    oBook = oExcel.Workbooks.Open(xlsFileName,oMissing,oMissing,oMissing,oMissing,oMissing,oMissing,oMissing, oMissing,oMissing,oMissing,oMissing, oMissing,oMissing,oMissing);