二维码
微世推网

扫一扫关注

当前位置: 首页 » 快闻头条 » 科普 » 正文

每日Excel分享(VBA)

放大字体  缩小字体 发布日期:2018-07-12 16:38:04    作者:微世推-李红华    浏览次数:255
导读

感谢关注导读如何在执行代码的时候弹出一个选择框选择单元格区域然后再根据该单元格区域的名称去删除相应的工作表呢?打开VBE编辑器新建模块并添加VBA代码,如下图:操作方法:按ALT F11组合键打开VBE编辑器,选中任

导读

如何在执行代码的时候弹出一个选择框选择单元格区域然后再根据该单元格区域的名称去删除相应的工作表呢?

打开VBE编辑器新建模块并添加VBA代码,如下图:

操作方法:

按ALT F11组合键打开VBE编辑器,选中任意一个工作表名点击右键,然后选择“插入——模块”,在模块中粘贴以下代码:

Sub 批量删除工作表()

    Dim sh As Object

    Application.Displayalerts = False '关闭提示,否则每删除一个非空工作表,都会出现提示

    Set a = Application.InputBox(prompt:='选择要删除的工作表名称单元格区域', Type:=8) '设置一个输入框并设置返回数据类型为单元格引用

    For Each sh In ThisWorkbook.Sheets

        With sh

            If Application.WorksheetFunction.CountIf(a, .Name) 0 Then

                .Delete

            End If

        End With

    Next sh

    Application.Displayalerts = True '开启提示

End Sub


PS:上面代码中黑色字体部分“Set a = Application.InputBox(prompt:='选择要删除的工作表名称单元格区域', Type:=8)”是设置一个单元格选择框,可以在执行代码的时候让我们自由选择任意单元格区域并返回单元格区域的引用。


添加一个用于执行VBA代码的按钮,并指定要执行的代码


最终效果如下:

PS:弹出选择框后除了可以拖动选取单元格区域之外,还可以在输入框中手动输入单元格区域(例如直接输入 A2:A31)哦。


在VBA中,Application.InputBox 方法是一个很有意思的用法,可以让VBA代码中数据的选择区域更灵活,大家如果想了解更多更详细的Application.InputBox的用法,就请继续关注咱们公众号的每日文章分享吧,总有一篇是你需要的。


第281天的坚持,离365天的小目标还剩84天

我的Excel,天天与你不见不散

 
(文/微世推-李红华)
免责声明
• 
本文仅代表发布者:微世推-李红华个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,需自行承担相应责任。涉及到版权或其他问题,请及时联系我们删除处理邮件:weilaitui@qq.com。
 

Copyright©2015-2025 粤公网安备 44030702000869号

粤ICP备16078936号

微信

关注
微信

微信二维码

WAP二维码

客服

联系
客服

联系客服:

24在线QQ: 770665880

客服电话: 020-82301567

E_mail邮箱: weilaitui@qq.com

微信公众号: weishitui

韩瑞 小英 张泽

工作时间:

周一至周五: 08:00 - 24:00

反馈

用户
反馈