> 技术文档 > Access开发一键删除Excel指定工作表

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

Hi,大家好!

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

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

01创建窗体

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

1.png

02添加代码

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

Dim objApp  As Object           \'Excel.ApplicationDim objBook As Object           \'WorkbookDim 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. 后台启动 ExcelSet objApp = CreateObject(\"Excel.Application\")objApp.DisplayAlerts = False    \'关闭系统弹框\'3. 打开工作簿并删除 Sheet1Set objBook = objApp.Workbooks.Open(strFile)On Error Resume Next            \'若 Sheet1 不存在也不报错objBook.Worksheets(\"Sheet1\").DeleteOn Error GoTo 0\'4. 保存并收尾objBook.SaveobjBook.Close SaveChanges:=FalseobjApp.Quit

03测试

最后,就是测试一下。

要点说明:

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

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

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

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

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

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