Access开发一键删除Excel指定工作表

发布于:2025-07-25 ⋅ 阅读:(20) ⋅ 点赞:(0)

Hi,大家好!

又到了每周给大家更新的时间了,这周给大家讲讲excel的处理操作吧。

在开始前,先给大家汇报一下我们框架的进度,最近两周没有直播,所以大家不太清楚目前的进度,框架目前就差权限了,我争取在8月份上线测试。开始前,大家先给个一键三连吧!

01创建窗体

首先,我们先创建一个窗体,在窗体上放一个按钮就可以了。

1.png

02添加代码

在按钮的单击事件里添加代码:


Dim objApp  As Object           'Excel.Application

Dim objBook As Object           'Workbook

Dim strFile As String           '用户选中的文件



'1. 让用户挑文件

With Application.FileDialog(msoFileDialogFilePicker)

    .Filters.Clear

    .Filters.Add "Excel", "*.xls;*.xlsx"

    If .Show <> -1 Then Exit Sub

    strFile = .SelectedItems(1)

End With



'2. 后台启动 Excel

Set objApp = CreateObject("Excel.Application")

objApp.DisplayAlerts = False    '关闭系统弹框



'3. 打开工作簿并删除 Sheet1

Set objBook = objApp.Workbooks.Open(strFile)

On Error Resume Next            '若 Sheet1 不存在也不报错

objBook.Worksheets("Sheet1").Delete

On Error GoTo 0



'4. 保存并收尾

objBook.Save

objBook.Close SaveChanges:=False

objApp.Quit

03测试

最后,就是测试一下。

要点说明:

FileDialog(msoFileDialogFilePicker) 让脚本拥有“所见即所得”的文件选择体验,用户免记路径。

DisplayAlerts = False 关闭诸如“删除工作表无法撤消”之类的警告,保证脚本无人值守。

On Error Resume Next / GoTo 0 组合,在目标工作表可能已被删掉时也能正常结束。

Save 与 Close 分离:先硬保存,再以 SaveChanges:=False 关闭,避免二次询问。

当一个重复且机械的动作可以被脚本完全取代,就意味着省下的每一分钟都能投入到更具价值的工作。把这段 VBA 收进你的工具箱,下次碰到批量“瘦身” Excel 的需求,只需双击运行,剩下的交给代码。

愿你在自动化的道路上越走越轻松。


网站公告

今日签到

点亮在社区的每一天
去签到