如何将excel导入access,点一下按钮就能导入的那种,用c#做

解决方案 »

  1.   

    c#中通过excel对象 逐行读取
      

  2.   

    用ADO.net打开Excel,然后逐笔写入到Excel中就可以。
      

  3.   

          SqlConnection com = new SqlConnection(connString);
                                                com.Open();
                                                SqlCommand co = new SqlCommand(" insert   into  student  select *from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=" + openFileDialog1.FileName + "','select *from [" + textBox4.Text + "$" + "]')", com);
                                                int i = co.ExecuteNonQuery();
                                                if (i > 0)
                                                {
                                                    MessageBox.Show("你已经导入了一个xls文件");                                                n = 0;
                                                }
                                                else
                                                {
                                                    MessageBox.Show("你的操作有误");                                            }
    我是导入sqlsever你参考下
      

  4.   

     string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;";   
                strConnection += @"Data Source=C:\Documents and Settings\v-changl\My Documents\a.accdb;";   
                strConnection += "Persist Security Info=False";   
                using (OleDbConnection objConnection = new OleDbConnection(strConnection))   
                {   
                    objConnection.Open();   
                    OleDbDataAdapter myCommandd = new OleDbDataAdapter("select * from Tb", objConnection);   
                    DataSet ds = new DataSet();   
                    myCommandd.Fill(ds, "A");   
                    DataTable dt = ds.Tables["A"];     
                    objConnection.Close();   
                }  
    private DataTable XlsToDataTable(String strpath) 
        { 
            string strConn; 
            strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + 
                "Data Source=" + strpath + ";" + 
                "Extended Properties=Excel 8.0;"; 
            OleDbConnection conn = new OleDbConnection(strConn); 
            OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn); 
            DataTable dt = new DataTable(); 
            myCommand.Fill(dt); 
            return dt; 
        } 
      

  5.   

    楼上,.accdb是access07?access03改为 
    string strConnection = "Provider=Microsoft.ACE.OLEDB.8.0;";  
                strConnection += @"Data Source=C:\Documents and Settings\v-changl\My Documents\a.mdb;";  ???是不是需要把那个版本改一下
      

  6.   

    先把excel里的读到datatable里,然后在放进access
      

  7.   

     string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;";
                strConnection += @"Data Source=C:\Documents and Settings\v-changl\My Documents\couse.xlsx;";
                strConnection += "Extended Properties=\"Excel 12.0 Xml;HDR=YES\";";
                OleDbConnection objConnection = new OleDbConnection(strConnection);
                objConnection.Open();
                OleDbDataAdapter myCommandd = new OleDbDataAdapter("select * from [Sheet1$]", objConnection);
                DataSet ds = new DataSet();
                myCommandd.Fill(ds, "[Sheet1$]");
                System.Data.DataTable dt = ds.Tables["[Sheet1$]"];
                Console.WriteLine(dt.Columns[0].ToString());
                Console.WriteLine(dt.Columns[1].ToString());
    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LCL_data/archive/2009/05/06/4154784.aspx
    和连接sql2005差不多,只需要该连接字符串即可.using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.OleDb;
    using System.Data.SqlClient;namespace TestAccess
    {
        class Program
        {
            static void Main(string[] args)
            {
                #region Access 2007
                Console.WriteLine("Access 2007");
                string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;";
                strConnection += @"Data Source=C:\Documents and Settings\v-changl\My Documents\Database1.accdb;";
                strConnection += "Persist Security Info=False";
                using (OleDbConnection objConnection = new OleDbConnection(strConnection))
                {
                    objConnection.Open();
                    OleDbDataAdapter myCommandd = new OleDbDataAdapter("select * from Couse", objConnection);
                    DataSet ds = new DataSet();
                    myCommandd.Fill(ds, "couse");
                    DataTable dt = ds.Tables["couse"];
                    Console.WriteLine(dt.Columns[0].ToString());
                    Console.WriteLine(dt.Columns[1].ToString());
                    Console.WriteLine(dt.Columns[2].ToString());                objConnection.Close();            }
                #endregion
    }
    }
    }本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LCL_data/archive/2009/05/06/4154255.aspx