您的位置:首页 > 编程语言 > VB

VB连接EXCEL,开发适合自己的小工具

2019-02-22 10:16 99 查看

为了快速查询数据库表数据(频繁查询数据库表):
自动替换功能,例如:sf=select * from ; mtn=mtn_alt_cntr
自动备份以前SQL、每天日记DIARY的读写;
专项问题的SQL群,支持可编辑、一键读取;
支持生产数据、测试数据的对比(同时连接访问两个数据库表);

支持开发、运维工作:
根据多组关键字查询相关内容,例如:
查询开发环境、测试环境的地址;
查询相关业务知识、设计及可能的缺点后果等;
查询某些问题的解决方案;
查询交易号对应的日志文件名;
查询……

按字符串内容查询文件清单;
其它查询:例如,根据机构号查询是哪家分公司;
自动连接远程桌面功能;

此部分功能需要EXCEL作为数据库(VB连接ORACLE的多种方法对比在另外一篇文章讲),在此记录:
经对比,个人认为“Provider=Microsoft.ACE.OLEDB.12.0”最适合,需要本机安装EXCEL和AccessDatabaseEngine.exe驱动引擎。
注:驱动的匹配情况,此处要安装excel2010及以后(我安装的office2016/excel2016),AccessDatabaseEngine也要下载与之匹配的(根据office是32位与否下载对应的,而不是根据操作系统位数下载),具体操作可在网上搜索下,此类文章很多。

''Excel2003驱动-MS
'excelConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\conf\slbps_support.xlsx;" & _
"Extended Properties=""Excel 8.0;"""

''Excel2010驱动-MS
If excelConn.State = adStateClosed Then
excelConnString = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & App.Path & "\conf\slbps_support.xlsx;" & _
"Extended Properties=""Excel 12.0 Xml;"";"        'HDR=YES;IMEX=1

excelConn.CursorLocation = adUseClient '设置ADODB链接参数
excelConn.Mode = adModeReadWrite
excelConn.Open excelConnString
End If

Call SqlExecResult(excelConnString, "EXCEL CONN SUCCESS")

'select * from [ResultByKey$] where 1=1 and subclass1 like "%test%"
excelSql = "select * from [ResultByKey$] where 1=1" '& " and subclass1 like '%" & "test" & "%'"  'and MainType=""NA"""
excelRS.CursorLocation = adUseClient
excelRS.Open excelSql, excelConn, 1, 3   '1-adOpenKeyset:但这种方法可以向任何方向移动行坐标; 3-adLockOptimistic:开放式锁定(逐个)--只在调用Update方法时才锁定记录;
Set dgd_myRecord.DataSource = excelRS
Call SetCloumn

差不多就写到这儿,结束。
2019年2月22日

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: