1.概要

无非就是把excel的表格当作数据的表格,

1.1.sheet页面等于表名,例: [heet1$] == 表名

1.2.字段等于F*,例:dataRow["F3"]

2.代码

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ExcelOledb测试
{class Program{/// <summary>/// Microsoft Jet 提供程序用于连接到 Excel 工作簿。在以下连接字符串中,Extended Properties 关键字设置 Excel 特定的属性。/// “HDR=Yes;”指示第一行中包含列名,而不是数据,“IMEX=1;”通知驱动程序始终将“互混”数据列作为文本读取。/// Excel 8.0 针对Excel2000及以上版本,Excel5.0 针对Excel97。/// Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""/// String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source=c:/test.xls;" +"Extended Properties=Excel 8.0;";/// string ConnnectionString =  "Provider='Microsoft.Ace.OLEDB.12.0';Data Source=c:/test.xls;" + "Extended Properties=Excel 8.0;";/// </summary>/// <param name="args"></param>static void Main(string[] args){Console.WriteLine("ExcelOledb测试");//test1();test2();Console.ReadKey();}static void test1() {string ExcelPath = "灌装机数据通讯表.xlsx";string ConnnectionString = string.Format(@"Provider='Microsoft.Ace.OLEDB.12.0';Data Source={0};" + "Extended Properties=Excel 8.0;", ExcelPath);OleDbConnection Excelconn = new OleDbConnection(ConnnectionString);try{Excelconn.Open();OleDbCommand Excelcomm = new OleDbCommand();//这段代码甚至可以让Connection重定向,根据实际需要选择该写,如果不需要重定向,From TableName就好了 string ExcelCommText = string.Format("select * FROM  [Excel 8.0;HDR=yes;DATABASE={0}].[{1}$]", ExcelPath, "MES-PLC_S");OleDbDataAdapter sda = new OleDbDataAdapter(ExcelCommText, Excelconn);DataSet ds = new DataSet();sda.Fill(ds);DataTable dataTable = ds.Tables[0];foreach (DataRow dataRow in dataTable.Rows){Console.WriteLine(dataRow[2]);Console.WriteLine(dataRow["F3"]);}}catch (Exception ex){}}static void test2() {string ExcelPath = "灌装机数据通讯表.xlsx";string ConnnectionString = string.Format(@"Provider='Microsoft.Ace.OLEDB.12.0';Data Source={0};" + "Extended Properties=Excel 8.0;", ExcelPath);OleDbConnection Excelconn = new OleDbConnection(ConnnectionString);Excelconn.Open();DataTable tb = Excelconn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);foreach (DataRow row in tb.Rows){//遍历弹出各Sheet的名称Console.WriteLine(row["TABLE_NAME"]);}}}
}

3.运行结果

4.参考连接

c#中采用OLEDB方式来读取EXCEL文件和将数据写入EXCEL文件 - 走看看

C#读取Excel的方法总结_w3cschool

C#导入Excel数据的方式(两种) - 曾小慧 - 博客园

c# oledb 方式操作excel 简单相关推荐

  1. python小程序嵌入excel_用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!...

    大家好,在之前的Python办公自动化系列文章中,我们已经介绍了两个Python操作Excel的库openpyxl与xlwings,并且相信大家已经了解这两者之间的异同. 但是在Python中操作Ex ...

  2. 用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!

    来源:早起Python 本文就将介绍一个强大的库xlsxwriter.来学习如何用原生的方式操作Excel! 首先还是来简单了解下这三个库之间的区别 " openpyxl:只允许读取和写入. ...

  3. 大聪明教你学Java | EasyExcel - 用更简单的方式操作Excel

    前言 我们在开发应用系统的时候经常遇到操作或解析 Excel 的需求,我们在实现此功能的时候也都是借助 Apach POI 去操作 Excel,但是使用过这个框架的小伙伴都知道,这个框架并不是很好用, ...

  4. excel oledb mysql_OLEDB操作Excel

    使用OLEDB操作Excel 的方法 OleDbConnection conn = null; try { //fileName 表示要操纵的Excel的文件路径,如果excel不存在,现创建它,可以 ...

  5. asp.net采用OLEDB方式导入Excel数据时提示:未在本地计算机上注册Microsoft.Jet.OLEDB.4.0 提供程序...

    笔者在项目中做做了一个从Excel表格中导入数据的模块.大体上asp.net项目中导入Excel大体分成三类: 1)采用c#内置方案System.Data.OleDb(限制较小, 通用) 2)采用Ex ...

  6. python处理excel的方法有哪些_Python操作Excel简单方法

    今天一同学给我发来一个Excel文件,让我帮他找一些信息,打开一开 8000多条数据.自己手工处理是不可能完成的的啦.作为一名程序员,当然要用程序来处理.处理生活中的问题当然是Python最为方便啦. ...

  7. .Net 使用oledb方式读取Excel

    开发.net项目使用microsoft.ACE.oledb读取excel文件: 1 连接串: string    strCon =string.Format("Provider=Micros ...

  8. oledb 操作 excel

    oledb excel http://wenku.baidu.com/search?word=oledb%20excel&ie=utf-8&lm=0&od=0 [Asp.net ...

  9. C#读写EXCEL(OLEDB方式)

    用OLEDB方式读取EXCEL的速度是非常快的.但是当Excel数据量很大时.会非常占用内存,当内存不够时会抛出内存溢出的异常. OLEDB方式将Excel作为一个数据源,直接用Sql语句操作数据,并 ...

最新文章

  1. 每日一皮:循环没写好,导致后面数据覆盖了前面的数据...
  2. Hibernate统计表中的条数
  3. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言—— 1123:图像相似度
  4. java 多模块项目 包路径冲突_多智能体仿真建模在交通中的应用|MATSim入门指南...
  5. vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法
  6. 第三十三期:使用wireshark抓包分析-抓包实用技巧
  7. 界面优美的linux,Ubuntu 11.04新版发布 诠释精美用户界面
  8. java applet运行jmx,通过tomcat设置jvm及添加jmx远程访问、gc输出日志
  9. 解决QSqlTableModel::setData()崩溃的问题
  10. Python 辛普森积分法 simps计算sin(x)的值(完美实现)
  11. wavin flag by k'naan
  12. 接连倒闭失联的背后 传统健身房生意为什么突然就不行了?
  13. 有吧友需要PDF的下载站点,好吧,我这边汇总一下
  14. php中$this-是什么意思
  15. 多重背包的二进制拆分法
  16. 3DS动物之森(animal acrossing)游戏记录
  17. Inline Hook 钩子编写技巧
  18. 字节跳动 面试 复盘 回顾 2021 过客局
  19. 康宁杰瑞、君实生物、天境生物人事任命;赛诺菲诺维乐在中国上市新适应证 | 医药健闻...
  20. 【山外智能车】【IAR】【编译问题】HardFault_Handler

热门文章

  1. 电阻,电容,电感(resistor, capacitor, inductor)
  2. java环境变量设置 win2003,2021-03-09Win10的Java环境配置Win10下Java环境变量配置
  3. CentOS8.1部署Gitlab+Jenkins持续集成(CI/CD)环境之Jenkins安装(二)
  4. 这几款笔记本电脑性价比还不错
  5. 为客户带来价值-需求分析的实用方法
  6. 知乎热榜:做程序员攒钱10年,够一百万左右回农村存银行一个月6千利息现实吗?...
  7. JZOJ 4231. 寻找神格
  8. 动态获取鼠标在盒子里的位置
  9. 坚定的信念就是成功的一大半
  10. hive中控制窗口范围rows between的使用