VBA数据库解决方案 第二十五讲    工作表中提供的数据在数据表中批量删除
《VBA数据库解决方案》教程版权10090845是我推出的第二套教程目前已经是第二版修订了。这套教程定位于中级是学完字典后的另一个专题讲解。数据库是数据处理的利器教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作教程第一版的修订内容主要是完成所有程序文件的32位和64位OFFICE系统测试。这套教程共两册八十四讲今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是VBA数据库解决方案第二十五讲 工作表中提供的数据在数据表中批量删除【分享成果随喜正能量】一个人最大的靠山从不什么权势和背景。而是丰富的知识稳定的情绪和可控的生活。第二十五讲 工作表中提供的数据在数据表中批量删除大家好,我们今日继续讲解VBA数据库解决方案的第25讲内容利用VBA把工作表中提供的数据在数据表中批量删除的方法。在上一讲中我们讲了实现在数据表中删除记录的一般方法这种方法可以对重复的数据进行处理,但实际的情况是,我们的数据记录很多时候是没有重复的,而且如果数据量很大该怎么处理呢?今日我们就讲解如何在记录集中批量删除给定记录的方法。1 应用场景的具体分析实例:我们有一个员工的信息表,导出的数据如下:在工作实际中我们需要删除其中的100013,100024,的记录,当然还可以更多,如下表格是需要在数据库中删除的数据信息:也就是说我们要删除的数据中是以员工编号为索引的记录,这个时候需要如何处理代码该如何写呢如果仍采用上讲的办法也是可以的但今天我们将介绍一种新的方法。就是批量删除。2 根据工作表数据批量删除数据表记录的代码及代码解读代码如下Sub mynz_25() 第25讲 利用VBA把工作表中提供的数据在数据表中批量删除的方法Dim cnADO As Object, rsADO As ObjectDim strPath As String, strTable As String, strWhere As String, strSQL As String, strMsg As StringSet cnADO CreateObject(ADODB.Connection)Set rsADO CreateObject(ADODB.Recordset)strPath ThisWorkbook.Path \mydata2.accdbstrTable 员工信息cnADO.Open ProviderMicrosoft.Ace.OLEDB.12.0;Data Source strPathstrSQL SELECT * FROM strTablersADO.Open strSQL, cnADO, 1, 3汇报给用户记录数MsgBox 删除前记录数为 rsADO.RecordCountrsADO.ClosestrWhere WHERE EXISTS( _ SELECT * FROM [Excel 12.0;Database _ ThisWorkbook.FullName ].[ ActiveSheet.Name $ _ Range(a1).CurrentRegion.Address(0, 0) ] _ WHERE 员工编号 strTable .员工编号)strSQL SELECT 员工编号 FROM strTable strWherersADO.Open strSQL, cnADO, 1, 3If rsADO.RecordCount 0 ThenstrSQL DELETE FROM strTable strWherecnADO.Execute strSQLMsgBox rsADO.RecordCount 条记录被删除。, vbInformation, 提示ElseMsgBox 没有发现需要删除的记录。, vbInformation, 提示End IfrsADO.ClosestrSQL SELECT * FROM strTablersADO.Open strSQL, cnADO, 1, 3汇报给用户记录数MsgBox 删除后记录数为 rsADO.RecordCount释放内存rsADO.ClosecnADO.CloseSet rsADO NothingSet cnADO NothingEnd Sub代码截图代码解读1Dim cnADO As Object, rsADO As ObjectDim strPath As String, strTable As String, strWhere As String, strSQL As String, strMsg As StringSet cnADO CreateObject(ADODB.Connection)Set rsADO CreateObject(ADODB.Recordset)strPath ThisWorkbook.Path \mydata2.accdbstrTable 员工信息cnADO.Open ProviderMicrosoft.Ace.OLEDB.12.0;Data Source strPathstrSQL SELECT * FROM strTablersADO.Open strSQL, cnADO, 1, 3汇报给用户记录数MsgBox 删除前记录数为 rsADO.RecordCountrsADO.Close在上述的代码中我们用的是后期绑定的方法建立了ADO连接并且汇报当前的记录数2strWhere WHERE EXISTS( _ SELECT * FROM [Excel 12.0;Database _ ThisWorkbook.FullName ].[ ActiveSheet.Name $ _ Range(a1).CurrentRegion.Address(0, 0) ] _ WHERE 员工编号 strTable .员工编号)strSQL SELECT 员工编号 FROM strTable strWherersADO.Open strSQL, cnADO, 1, 3If rsADO.RecordCount 0 ThenstrSQL DELETE FROM strTable strWherecnADO.Execute strSQLMsgBox rsADO.RecordCount 条记录被删除。, vbInformation, 提示ElseMsgBox 没有发现需要删除的记录。, vbInformation, 提示End IfrsADO.Close上述代码用了一个WHERE语句把EXCEL工作表和数据表进行了连接并打开了符合要求的记录集。关于EXCEL的连接方式在这本书中有介绍这里不再多说打开记录后仍旧用DELETE的方法进行删除之后弹出对话框告诉用户删除的数量。下面我们看运行情况上述代码在执行过程中首先会提示删除数据前的记录数然后提供删除记录的信息最后提供删除后的记录提示为了验证数据我们需要再次显示记录数点击显示记录即可在一般的情况下实际工作中我们需要先点击总记录数然后选择把需要保留的记录删除留下需要删除的记录最后点击删除运行按钮即可。今日内容回向1 如何批量删除数据表中的数据2 如何连接EXCEL的工作表?本讲内容参考程序文件VBA与数据库操作第一册.xlsm我20多年的VBA实践经验全部浓缩在下面的各个教程中

相关新闻

Reltio收购对SAP的主数据管理意味着什么?Reltio和MDG将会各自扮演怎样的角色?

Reltio收购对SAP的主数据管理意味着什么?Reltio和MDG将会各自扮演怎样的角色?

文章目录为什么主数据管理(MDM)比以往任何时候都更加重要SAP MDG:源端集中治理SAP Reltio:跨任意数据源的数据统一协同更强大:互补型架构选择你的数据战略结论主数据是所有SAP业务流程、分析报表和人工智能应用场景的基…

2026/10/21 7:18:58 阅读更多 →
组网第一课:从一根 2M 专线说起——DDN 与电路交换的黄金时代

组网第一课:从一根 2M 专线说起——DDN 与电路交换的黄金时代

组网第一课:从一根 2M 专线说起——DDN 与电路交换的黄金时代上礼拜去县里一家水务公司处理"专线断了"。机房角落那台灰盒子蒙着二十来年的灰,背后的 BNC 头子松了,拧下来一看,芯子氧化得发黑。擦干净、重新拧紧&#x…

2026/10/25 23:27:31 阅读更多 →
运行Docker和MySQL学习环境,1核2G内存够用吗?

运行Docker和MySQL学习环境,1核2G内存够用吗?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/21 9:16:31 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/5 12:28:00 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/5 1:08:50 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/5 12:28:01 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/5 12:28:02 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/5 0:54:28 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/4 19:19:54 阅读更多 →

日新闻

周新闻

月新闻