当前位置:编程学习 > C#/ASP.NET >>

c#怎样将excel导入到Aaccess

如题~ --------------------编程问答-------------------- --------------------编程问答-------------------- http://topic.csdn.net/u/20080605/13/4709a848-ab4b-407a-b2bf-e1212a358c15.html
http://blog.csdn.net/zjfei/archive/2010/03/19/5397429.aspx --------------------编程问答-------------------- public void ImportExcel(string fileName)
    {
        fileName = "e:\\工资模板.xls";
        string excelStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";//execl 2003
        //string excelStr = "Provider= Microsoft.Ace.OleDB.12.0;Data Source=" + fileName + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'";//execl 2007以上(需要装个AccessDatabaseEngine引擎,网上找找)
        DataSet ds = new DataSet();
        using (System.Data.OleDb.OleDbConnection cn = new OleDbConnection(excelStr))
        {
            using (OleDbDataAdapter dr = new OleDbDataAdapter("SELECT * FROM [sheet1$]", excelStr))
            {
                dr.Fill(ds);
            }
        }
        //插入到数据库

       } --------------------编程问答-------------------- --------------------编程问答-------------------- access可以直接导入EXCEL的,为什么要在C#里面转个圈?不明白.. --------------------编程问答--------------------
引用 5 楼 janegujun 的回复:
access可以直接导入EXCEL的,为什么要在C#里面转个圈?不明白..

人家可能是想用编程实现。Access确实可以直接导入Excel中的数据,但是对于不规范的数据时不能这么弄的。
Excel可以看多OLEDB数据库,可以用ADO.NET访问和操作。 --------------------编程问答-------------------- private void btnSelect_Click(object sender, EventArgs e)
        {
            string m_FileName = "";
            string m_Sql = "select * FROM [Sheet1$]";
            
            OpenFileDialog myOpenFile = new OpenFileDialog();
            myOpenFile.InitialDirectory = "c:\\";
            myOpenFile.Filter = "Excel文件(*.xls;*.xlsx)|*.xls;*.xlsx";
            myOpenFile.RestoreDirectory = true;
            myOpenFile.FilterIndex = 1;

            if (myOpenFile.ShowDialog() == DialogResult.OK)
            {
                m_FileName = myOpenFile.FileName;
                textBoxFileName.Text = m_FileName;
            }
            else
            {
                textBoxFileName.Text = "";
                return;
            }

            myDataTable.Clear();

            myDataTable = PubPara.ExcelToDataTable(m_FileName, m_Sql);
            if (myDataTable == null) return;

            dataGridViewArticle.DataSource = myDataTable;

            dataGridViewArticle.RowHeadersWidth = 25;
            dataGridViewArticle.Columns[2].Width = 200;
            dataGridViewArticle.Columns[13].Width = 200;
        }

补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,