用VB 代码读取 Excel 内容
引子
常规的方法可能是循环读取每一行每一个格子的内容并存入 Recordset 并保存
此处使用Open Recordset 的方式,将 Excel Worksheet 作为一个数据源直接读取
速度将是数量级的差别,几万笔记录的情况下,将由几十秒,甚至几分钟,加快至几秒钟
解决代码
'导入Excel 文件内容
'Excel 格式为 Excel 2007 之上的 .xlsx 格式,需使用 ACE 读取
'其中的 HDR=No (Yes) 代表是否处理第一行的标题行
Private Function ImportExcelSheetData(ByVal p_sExcelFilePath As String, ByVal p_sSheetName As String) As BooleanOn Error GoTo errHandlerImportExcelSheetData = FalseDim cn As New ADODB.ConnectionSet m_rstImportData_Excel = New ADODB.RecordsetSet cn = New ADODB.Connectioncn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & p_sExcelFilePath & ";Extended Properties=""Excel 12.0;HDR=No;IMEX=1"";"m_rstImportData_Excel.Open "SELECT * FROM [" & p_sSheetName & "$]", cn, adOpenStatic, adLockOptimisticImportExcelSheetData = TrueerrHandler:If Err.Number <> 0 ThenScreen.MousePointer = vbDefaultMsgBox Err.Description, vbOKOnly + vbExclamation, "ImportExcelSheetData"End If
End Function
可能的问题
- 有时会出现读取到记录,但实际内容却为 Empty 的情况
- 有时则出现读取到内容,但在后续使用时其中的值均变为 Empty 的情况
解决方法
- <推荐>最大的可能是因为在使用 Recordset.Open() 方式打开Excel 文件时,那个文件已经被 Excel Application 打开,故有时会导致此情况,最简单的办法即在使用Open()方式之前关闭Excel Object;
- 另一个方法是完全处理完成数据(如保存至DB Table)后,再关闭或释放Excel Object
用VB 代码读取 Excel 内容相关推荐
- EasyExcel 轻松灵活读取Excel内容
写在前面 Java 后端程序员应该会遇到读取 Excel 信息到 DB 等相关需求,脑海中可能突然间想起 Apache POI 这个技术解决方案,但是当 Excel 的数据量非常大的时候,你也许发现, ...
- 读取Excel内容生成PNG图片
读取Excel内容生成PNG图片 1.需要的jar包 2.需要的pojo类 3.核心代码 本文转载自 心淡人也懒 的博客 https://blog.csdn.net/u014730287/articl ...
- 读取EXCEL内容空格或连字符变成问号
该问题之前已被其他兄弟发现并解决过,具体可参考这两篇文章 1.空格变成问号的怪问题--了解问题是如何产生的 2.该问题在读取EXCEL内容这个场景中的处理 今天我要写的是基于这两篇文章的一点延伸,两篇 ...
- POI读取Excel内容格式化
在用POI读取Excel内容时,经常会遇到数据格式化的问题. 比如:数字12365会变为12365.0;字符串数字123也会变为123.0,甚至会被变为科学计数法.另外日期格式化也是一个头疼的问题.其 ...
- java读取Excel内容添加到list集合里面去
java读取Excel内容添加到list集合里面去 package com.changan.contract.newsign.utils;import com.changan.contract.xqh ...
- python_通过xlrd读取excel内容
一.模块安装 以下会使用xlrd模块读取excel内容,之前已安装过xlrd模块的,需要先卸载当前版本,并安装指定版本(1.2.0),如未安装者直接使用第二条命令安装. pip uninstall x ...
- nodejs读取excel内容批量替换并生成新的html和新excel对照文件
因为广告投放需要做一批对外投放下载页面,由于没有专门负责填充页面的编辑同学做,只能前端来做了, 拿到excel看了一下,需要生成200多个文件,一下子懵逼了. 这要是来回复制粘贴太low了 正好最新用 ...
- java读取excel数据_Java读取Excel内容(转)
借助于apathe的poi.jar,由于上传文件不支持.jar所以请下载后将文件改为.jar,在应用程序中添加poi.jar包,并将需要读取的excel文件放入根目录即可 本例使用java来读取exc ...
- Java读取Excel内容
借助于apathe的poi.jar,由于上传文件不支持.jar所以请下载后将文件改为.jar,在应用程序中添加poi.jar包,并将需要读取的excel文件放入根目录即可 本例使用java来读取exc ...
- VB.NET读取Excel数据在CAD上展图
根据网友的需求,编写此程序:读取Excel文件当中的数据,在CAD图上展绘孔位及其桩号与孔深的属性. 本实例包含以下技术要点: 1.如何用代码创建带属性的块对象,而非导入外部图块文件(尤其是带填充对象 ...
最新文章
- node.js实现国标GB28181流媒体点播(即实时预览)服务解决方案
- 【TensorFlow2.0】(1) tensor数据类型,类型转换
- 使用JDK自带jvisualvm监控tomcat
- python 是什么类型的语言-为什么说 Python 是强类型语言?
- 【机器学习】集成学习知识点总结二
- Openstack Havana的两个排错过程
- php中函数怎么调用参,php – 将参数传递给可调用函数
- pdf 加深 扫描件_扫描文字字体如何加深 pdf扫描件字体加深
- 贝叶斯决策论及朴素贝叶斯分类器
- jupyter notebook 302 get打不开
- android的Activity采用透明主题
- 如何设计一个小而美的秒杀系统(抢红包)?
- 正弦波振荡的常见电路
- 游戏术语 DAU APA ACU PCU
- matlab fill 图案填充,Matlab条形图中填充图案
- 微信小程序checkbox的全选以及所有checkbox选中之后的全选
- 如何更好地进行销售预测
- 2022年中国云市场份额:阿里云腾讯云下降
- 数据库身份证号加密密码加密_使用基于密码的加密保护会议室数据库
- 乱弹琴的系统设计套路(适合新手)