你用翻译软件,将那些COM的类的名称翻译过来,应该可以猜到是哪个了。微软的命名还是比较规范的。
CELL[]好像比较麻烦,除非你有办法得到I,J的取值范围

解决方案 »

  1.   

    呵呵,刚找了一遍还是不知是Excel.Arc 还是Excel.chart还是其它,水平有限,还望高手明示!
    谢谢:)
      

  2.   

    使用excel自带的录制宏功能,或许可以看出端倪
      

  3.   

    MessageBox.Show(mysheet.UsedRange.Rows.Count.ToString());//mysheet为工作表
    MessageBox.Show(mysheet.UsedRange.Columns.Count.ToString());
      

  4.   

    使用objWorksheet.UsedRange.Rows.Count/Columns.Count得到使用的最大行数/列数,然后你在使用Cells[iRow,iCol]进行遍历。
    教你一个更好的方法,直接使用Range对象(它包括了上述的iRow,iCol区域)的Value属性【在excel2003中没有这个属性,但是有get_value方法】,它返回的是object对象,你可以将这个object转换成string[,]类型,这样会大大提高性能。我有一个Excel Quicker控件,其实就是对Excel COM的封装和性能改善,但是主要用于导出Excel时使用,你可以下载来看看。我的网站www.eudev.com
      

  5.   

    Excel中存放的是表中的数据的话,那么一定有字段名,还有主KEY,那么你就用循环判断以下字段名和KEY到哪一列或行为空值时,就知道表中的列数与行数了。
      

  6.   

    http://support.microsoft.com/kb/302084/ZH-CN/
      

  7.   

    System.Data.OleDb.OleDbConnection objConn = new System.Data.OleDb.OleDbConnection(
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + destFile +
    ";Extended Properties=Excel 8.0;");
    objConn.Open();System.Data.OleDb.OleDbCommand objCmd = new System.Data.OleDb.OleDbCommand();
    objCmd.Connection = objConn;
    objCmd.CommandText = String.Format("Insert into [订单列表$] (订单号,订单生成日,送货日期,订单状态)" +" values ('aa', 'bb','cc','dd')")objCmd.ExecuteNonQuery();