以前好像在那里见过有人问,怎么找不到了, 知道的请帮忙.string strconn = "provider=Microsoft.Jet.oledb.4.0;Data Source=" + textBox1.Text;
            OleDbConnection conn = new OleDbConnection(strconn);
            conn.Open();
            if (bo == false)
            {
                comboBox1.Items.Clear();
                DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
                foreach (DataRow dr in dt.Rows)
                {
                    comboBox1.Items.Add((String)dr["TABLE_NAME"]);
                    //MessageBox.Show((String)dr["TABLE_NAME"]); 
                }
                //comboBox1.Text = comboBox1.Items[0].ToString();
            }
            else
            {
                string sql = "select * from " + comboBox1.Text;
                OleDbDataAdapter aper = new OleDbDataAdapter(sql, conn);
                DataSet myset = new DataSet();
                aper.Fill(myset, comboBox1.Text);
                dataGridView1.DataSource = myset.Tables[comboBox1.Text];
            }
            conn.Close();

解决方案 »

  1.   

    系统将Excel第一行的内容当作了一个字段的Title,所以就少一行
      

  2.   

    @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""" "HDR=Yes;" indicates that the first row contains columnnames, not data
    "IMEX=1;" tells the driver to always read "intermixed" data columns as textTIP! SQL syntax: "SELECT * FROM [sheet1$]" - i.e. worksheet name followed by a "$" and wrapped in "[" "]" brackets.以上内容引自: http://www.connectionstrings.com如果第一行是数据而不是标题的话, 应该写: "HDR=No;"
      

  3.   

    连接字符串中增加:"HDR=Yes;" 后conn.Open(); 出错: 找不到可安装的ISAM
    请问怎么解决?????
    string strconn = "provider=Microsoft.Jet.oledb.4.0;Extended Properties=Excel 8.0;HDR=No;Data Source=" + textBox1.Text;
      

  4.   

    ok 谢谢大家 应该是wuyi8808(空间/IV) 说得 "HDR=No;"
      

  5.   

    还有个问题 
    excel里面如果有字符&数字混合 那么就读出来字符.
    请问怎么解决 
    "IMEX=1;" tells the driver to always read "intermixed" data columns as text 
    这个好像是解决这个问题的,但是没有起到任何作用呀.