到财务走了一圈,正好看到一位同事正在对两个Excel文件进行比较。两个文件的内容大致如此(列出部分列名):
主贷身份证 |
主贷人 |
贷款余额 |
440602**** |
李*瑜 |
¥35,000 |
360102**** |
李*亮 |
¥81,359 |
440202**** |
李*英 |
¥48,125 |
440682**** |
白*娟 |
¥1117,50 |
财务同事的需求是:找出两个表中贷款人身份证一样,但贷款余额不一致的数据。因量比较大,手工去找余额不一致相当麻烦。对财务人员来说可能经常会碰到这样的问题,痛苦!我第一反应是要给她想个办法,简单处理这种繁琐的工作。于时随手写了以下VBA来实现。
第一步,先将要核对的两个文件放到一个文件中,一个放在Sheet1,另一个放在Sheet2中。
第二步,加个按钮,写以下VBA事件:
Private Sub CommandButton1_Click()
Dim objCon, objDataSet, sqlStr
Set objCon = CreateObject("ADODB.Connection")
Set objDataSet = CreateObject("adodb.recordset")
objCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;imex=1;';Data Source=" & ThisWorkbook.FullName
sqlStr = "select a.* from [Sheet1$] a left join [Sheet2$] b on (a.[主贷身份证]=b.[主贷身份证]) where a.[贷款余额]<>b.[贷款余额]"
Set objDataSet = objCon.Execute(sqlStr)
Sheet1.[e1:g1000].ClearContents '清除这个区域
Sheet1.[e1].CopyFromRecordset objDataSet '将不致的写到E列
objDataSet.Close
objCon.Close
Set objDataSet = Nothing
Set objCon = Nothing
End Sub
按下按钮,不一致的数据全部找了出来。需求和解决办法虽简单,但可以帮助到很多不懂VBA的朋友,供参考。
分享到:
相关推荐
excel VBA实现两个excel文件所有worksheet单元格做对比,并找出差异,将差异进行着重显示,对于数据量非常在和对数据要求高的场景将会大大缩减人工对比的时间
在Excel 用VBa对比两个Sheet数据
VBA学习笔记本(二)——两个表格数据匹配_DEMO 将excel中两个工作表中,数据进行一键同步的通用方法
Excel VBA工具 可以指定条件, 列出某个文件夹下所有子文件夹和文件
通过Python的Xlwings包调用Excel可执行VBA宏文件实现对多个文件的Sheet页合并到一个Excel文件当中,达到多个Excel汇总的目的。 文件描述: 适用于 office 的Excel WPS的表格执行宏似乎需要收费 mergeExcel_VBA:为...
11两个层面运行宏的方法 40 12完善你的宏代码 41 13重新命名宏 43 14运行宏的其它方法 43 15使用键盘快捷键运行宏 43 16通过菜单运行宏 44 17通过工具栏按钮运行宏 46 18通过工作表里面的按钮运行宏 47 19保存宏 48 ...
最后安排两个综合系统实例,对Excel2007VBA知识点进行了综合应用,帮助读者迅速提升VBA综合设计能力,实现从入门到精通的快速飞跃。本书光盘中包括所有实例的素材和程序源代码,读者稍加修改,便可应用于自己的工作...
最后安排两个综合系统实例,对Excel2007VBA知识点进行了综合应用,帮助读者迅速提升VBA综合设计能力,实现从入门到精通的快速飞跃。本书光盘中包括所有实例的素材和程序源代码,读者稍加修改,便可应用于自己的工作...
内容简介 《Excel VBA 数据库整合应用范例精讲》用180个实例介绍了利用Excel VBA来操作数据库(包括Access、SQL Server和FoxPro)的实用方法和技巧。 全书共11章。第1~6章是利用Excel VBA操作Access数据库的实例...
Excel VBA 高效办公从入门到精通 何非 源代码 本书共包括16章,可以将其分为如下几个部分。 第一部分包括第1~3章,讲解了应用Excel VBA技术所需的基础知识。 其中VBA语言是重点,包含了VBA语言的语法、常用语句...
11两个层面运行宏的方法 32 12完善你的宏代码 32 13重新命名宏 34 14运行宏的其它方法 34 15使用键盘快捷键运行宏 34 16通过菜单运行宏 35 17通过工具栏按钮运行宏 37 18通过工作表里面的按钮运行宏 38 19保存宏 39 ...
01007获取打开Excel文件时的默认路径 01008获取模板保存的默认路径 01009获取库文件夹的路径 01010获取路径分隔符 01011获取Excel主窗口标题栏的名称 01012获取Excel窗口的状态(大小) 01013获取Excel主窗口的高度...
函数作用:取得一个文件的扩展名.....................89 '78.函数作用:取得一个文件的路径.......................90 '79.函数作用:十进制转二进制...........................90 '80.函数作用:检查一个数组是否为空...
Excel VBA与数据库整合应用范例精讲(范例文件代码) 内容简介 《Excel VBA 数据库整合应用范例精讲》用180个实例介绍了利用Excel VBA来操作数据库(包括Access、SQL Server和FoxPro)的实用方法和技巧。 全书共11章...
这个资源是我当时写这个程序的代码,进入excel按我的教程...如果不知道怎么使用这两个文件,可以百度一下。 里面有个word文档,里面的图片链接可能没用了,大家参考教程就行了。
原来发布的那个资源有些问题,再重新发布一次,实在不好意思。 Excel_2003高级VBA编程宝典,为*.djvu格式文件,大小为15.5MB,看起来像是PDF的感觉。...文件分为两个压缩包,请全部下下来后,再解压。
在此目录中新建一个excel文件并打开; 执行vba.xls里面的“表合并”宏,即可完成合并和数据行数统计,结果在新建的excel文件中的最后两张sheet中。 (统计行数的数组设为200维,若有更多张表,可进自行修改arr和str_...
里边是2个excel文档,带vba; 一个是拆50模板,用于把excel拆成固定行数的模板; 一个是拆地区模板,用于把一个excel按地区拆成多个excle;当然这个地区可以变成客户,变成学校,变成任何。
Learn Microsoft Excel 2002 VBA Programming with XML and ASP 带领你从始至终创建VBA过程,VBScripts,ASP 页面,XML 文件和XSL 工作表。沿着这条路,有许多详细的,适用的“如何做”例子和插图。本书的方法是“由...