SQL玩转Excel准数据库“增、删、改、查、恢复”数据之删除数据

上一期作品我们分享了用SQL完美呈现了对Excel准数据库实施追加数据的功能。从中我们用了最重要的核心语“Insert Into [准数据库Excel数据表$区域] (字段列表) Values(字段值列表)”就轻松搞定了Excel准数据库数据表数据的追加,打破了“Excel Home”论坛里大多数大咖宣称的用SQL不能对Excel准数据库数据的追加问题瓶颈。

今天,我们继续来打破了“Excel Home”论坛里大多数大咖宣称的用SQL不能对Excel准数据库数据的删除问题瓶颈。如果直接用SQL的Delete操作确实没法直接删除Excel准数据库数据,但是,是否就没有办法了呢?答案是否定的,事实上,我们只要多加研究,会找到另一条用SQL语句解决对Excel准数据库数据删除的另外方案。所以说啊,只要肯动脑子,什么问题都可以寻求出它们的解决方案的!

那到底这个方案是什么呢?通过我的研究、试验,总结起来就是“SQL查询要删除的记录+Excel自身的记录区域Delete删除功能”。这是很容易解释的:首先,我们得根据要删除记录的关键字用SQL语句查询出要删除的记录,取出查询的记录中唯一关键字段信息内容;其次,就是根据取出查询到的唯一关键字段信息,换算出要删除数据记录在Excel准数据库SQL操作的数据表中的行信息,由这些行信息构建待删除的记录数据区域;最后,调用数据区域的.Delete方法删除。

明白了以上等效解决方案思路,我们下面做起来就有了技术线路,亦会相当得心应手了。到这里,各位估计迫不及待了吧!好吧,下面我们马上分享给大家如何实现。补充一句:上次的原始数据主界面设计和SQL操作的数据工作表我们不再呈现,直奔我们今天主题的内容!还想熟悉上一期主界面情况的请浏览上一期作品,望各位粉丝理解。

一、SQL查询待删除Excel准数据库数据工作表数据语法规范

语法:Select * From [准数据库Excel数据表$区域] Where 待删除的条件

说明:查询当前操作表待删除的数据记录信息

举例:Select * From [Sheet2$A1:D] Where 姓名 Like ’%王%’

二、Excel数据区域的删除

只需要用Excel区域的Delete方法即可。

格式:Range.Delete

举例:

Dim rg As Range

Set rg=Sheet2.Range(“A3:D8”)

Rg.Delete

三、VBA后台删除记录数据窗体设计

在该窗体里,我们增设有提示作用的ActiveX类型的标签以及下拉组合框、命令按钮等。界面如下图所示

图1 后台删除记录数据的VBA窗体设计

四、删除记录数据的操作体验

(一)选择Excel前端界面的表单下拉组合框的操作类别“删除数据”列表项,准备弹出删除数据的窗体。如下图所示

图2 选择表单下拉组合框的“删除数据”选项

(二)在弹出的删除数据窗体中点击标题栏的<X>按钮,则弹出取消数据删除的消息框提起。如下图所示

图3 点击删除数据窗体标题栏的<X>按钮

(三)在弹出的删除数据窗体中如果下拉组合框字段域提示处不输入或选择任何删除关键字信息,而直接点击<根据关键字删除数据>按钮,则会以消息框方式提示字段域内容未输入或选择的情况。如下图所示

图4 字段域内容未输入或选择的情况

(四)如果在弹出的追加数据窗体中下拉组合框字段域提示处输入了删除关键字信息,但若该关键字信息的记录不存在,我们点击<根据关键字删除数据>按钮,则会以消息框方式提示待删除数据记录不存在的情况。如下图所示

图5 字段域内容输入的关键字数据不存在记录提示删除失败的情况

(五)如果在弹出的追加数据窗体中下拉组合框字段域提示处输入了删除关键字信息,且该关键字信息的记录存在后,我们点击<根据关键字删除数据>按钮,则会以消息框方式提示数据追加成功的情况。如下图所示

图6 字段域内容输入或选择的关键字数据存在记录则成功删除的情况

(六)数据成功删除后,会反映到应用操作的工作表,我们这里以Sheet2作为SQL操作表。如下图所示

图7 成功删除待删除的数据记录反映到操作表

好了,看了结果,那我们来看看后台VBA代码如何实现的吧,注意哦,我的代码都加了详尽的注释,目的是为了大家更好理解!

五、SQL追加准数据库Excel的VBA后台功能代码解析截图

(一)模块1中相关“追加数据”功能的代码截图

图8 “删除数据”模块1中代码截图1

(二)删除记录数据窗体的代码截图

图9 删除数据窗体代码截图1

到这里,我们在准数据库Excel中实现数据记录的删除操作就算分享完了。总结起来,就是先用SQL查询待删除关键字对应的记录情况,其次就是根据查询到的记录信息构建操作表中的删除区域,最后利用Excel的数据区域的Delete方法删除即可完成数据记录的删除。各位粉丝朋友可以大胆去尝试实现准数据库Excel工作表数据记录的删除吧,相信大家一定能学会哦,好了,各位去动手试试,嘿嘿!

好了,希望本次分享能给各位工作带来工作上同样的帮助。另外,下期作品我们将继续分享关于Excel准数据库数据记录用SQL方式的修改的操作,敬请大家多多留意关注哦!

最后,还是非常感谢大家不离不弃的持续关注、推广和点评我的原创作品哦!谢谢!顺便温馨提醒各位粉丝朋友,疫情快过了,但天气开始热了,各位粉丝朋友也要多加注意防暑降温哦!

(0)

相关推荐