`

c#用oledb读取excel进行排序,过滤重复值处理

    博客分类:
  • c#
阅读更多
string filePath = "e:\\中安电子公交线路站点数据20120524.xls";
            string strConn;
            string[] temp = { "兴趣点", "路" };
            strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'";
            OleDbConnection OleConn = new OleDbConnection(strConn);
            OleConn.Open();
            Microsoft.Office.Interop.Excel.Application ex = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook workbook = ex.Application.Workbooks.Open("e:\\中安电子公交线路站点数据20120524.xls", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);    
            ex.Visible = true;
            for (int i = 0; i < 2; i++)
            {
                Microsoft.Office.Interop.Excel.Worksheet xlSheet = null;
                xlSheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets.Add(Type.Missing, workbook.ActiveSheet, Type.Missing, Type.Missing);
                xlSheet.Name = "未匹配结果" + (i+1) + "";
                String sql = "SELECT DISTINCT 站点名称,结果 FROM  [中安电子公交线路站点数据20120524$] where 结果 like '%" + temp[i] + "%'";
                OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
                DataSet OleDsExcle = new DataSet();
                OleDaExcel.Fill(OleDsExcle, "中安电子公交线路站点数据20120524");
                System.Data.DataTable dt = OleDsExcle.Tables[0];
                int rownumber = dt.Rows.Count;
                int columnnumber = dt.Columns.Count;
                Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[i + 2];
                for (int j = 0; j < rownumber; j++)
                {
                    for (int k = 0; k < columnnumber; k++)
                    {
                        worksheet.Cells[j + 1, k + 1] = dt.Rows[j].ItemArray[k];
                    }
                }
            }
            OleConn.Close();  
0
3
分享到:
评论

相关推荐

    C#用Sql数据库查询方法操作Excel表格

    10. **OleDb或Odbc连接**:另一种方法是使用`System.Data.OleDb`或`System.Data.Odbc`命名空间,通过ODBC或OLEDB驱动程序直接查询Excel文件,就像它们是数据库一样。但这种方法对旧版Excel文件支持较好,对现代Open ...

    Excel表格导入GridView

    为了读取Excel文件中的数据,首先需要创建一个OLE DB连接。这里使用的是Microsoft Jet OLEDB驱动程序,该驱动程序支持多种文件格式,包括Excel。 ```csharp OleDbConnection DBConnection = new OleDbConnection(...

    Excel数据的导入到DataSet后显示到DataGrideView

    考虑到Excel的不同版本及可能存在的格式差异,应测试代码对多种Excel文件的兼容性,必要时使用更为现代的OLE DB驱动程序(如Microsoft.ACE.OLEDB.12.0),以支持Excel 2007及以上版本的.xlsx文件格式。 总之,将...

    AccessDatabaseEngine

    - 使用ACE.OLEDB,你可以从编程语言如VB.NET、C#、VBA或Python直接执行SQL查询,创建、更新或读取Access数据库和Excel工作簿。 2. **Excel ODBC**: - 除了OLE DB提供程序,AccessDatabaseEngine还提供了Excel ...

    UnityExcelDll.rar

    在Unity中,如果你的Excel数据结构非常复杂,且需要执行类似SQL的查询,那么可以考虑使用`System.Data.OleDb`来连接到Excel文件。 将这些DLL文件导入Unity项目后,确保在“Player Settings”中的“API ...

    四六级管理系统(C#)

    在本项目中,开发者利用C#的System.Data.OleDb命名空间下的类,例如OleDbConnection、OleDbDataAdapter和DataSet,实现了对xls文件的数据读取。通过建立数据库连接字符串,连接到Excel文件,然后使用...

    C#.net_经典编程例子400个

    81 实例068 在ListView控件中对数据排序或统计 83 实例069 在ListView控件中绘制底纹 84 实例070 在列表视图中拖动视图项 85 实例071 用ListView控件选取整行数据 88 实例072 用ListView...

    C#程序开发范例宝典(第2版).part08

    全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、即用。 第1章 窗体...

    C#程序开发范例宝典(第2版).part02

    全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、即用。 第1章 窗体...

    C#程序开发范例宝典(第2版).part12

    全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、即用。 第1章 窗体...

    C#程序开发范例宝典(第2版).part13

    全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、即用。 第1章 窗体...

Global site tag (gtag.js) - Google Analytics