搜索
查看: 2382|回复: 0

添加和删除工作表的通用方法VBA

[复制链接]

978

主题

1094

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
15950
发表于 2018-12-20 08:31:48 | 显示全部楼层 |阅读模式

添加和删除工作表的通用方法,在运行添加工作表代码前先删除工作簿中的工作表虽然可以避免同名错误,但也可能误删除有用的工作表,因此更为严谨的方法是在添加前先判断工作簿中是否存在相同名称的工作表,然后再进行下一步的操作。

Sub MyAddsh_3()

Dim sh As Worksheet

For Each Sh In Worksheets

If Sh.Name = "MY" Then

MsgBox "工作簿中已有""MY""工作表,将删除原存在的工作表"

Application.DisplayAlerts = False

Worksheets(Worksheets.Count).Delete

Application.DisplayAlerts = True

EXIT FOR

End If

Next

With Worksheets

Set sh = .Add(after:=Worksheets(.Count))

sh.Name = "MY"

End With

End Sub

代码解析:MyAddsh_3过程是先检查工作表中是否含有“MY”工作表,如果有,立刻删除,最后使用Add方法在工作簿中新建“MY”工作表.

a) For Each…. Next…. 将遍历工作表,检查原工作表中是否含有“MY”的工作表。

b) MsgBox "工作簿中已有""MY""工作表,将删除原存在的工作表" 如果有“MY”的工作表,首先要弹出一个对话框,告知有这个工作表,讲删除。

c) Application.DisplayAlerts = False 将关闭弹出的警告对话框。

d) Application.DisplayAlerts = True 将打开弹出的警告对话框。

e) Worksheets(Worksheets.Count).Delete 删除原有的工作表。

f) Set sh = .Add(after:=Worksheets(.Count))

sh.Name = "MY"

添加一个新的工作表,工作表的名称为"MY"


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

表格智创网

网站简介:表格智创网,是一家以表格设计和技能分享的专业社区,由会计帮帮网投资建设,尽专业,助提高专业技能。

表格智创网欢迎您!

联系我们

  • 工作时间:早上9:00-16:00
  • 客服电话:18668755857
  • 本站网址:www.excelwps.com
  • 淘宝店址:kjbbw.taobao.com

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表