excel 中如何删除多个sheet???在线

luhangyu 2005-06-05 10:49:12
vI = 2
Do While vI<= 20
Set xlsheet = xlbook.Worksheets(vI)
xlsheet.delete
vI = vI + 1
Loop

为什么当第二次执行Set xlsheet = xlbook.Worksheets(vI) 时就出错?(我要实现的功能就是用程序自动删除多余的sheet)
...全文
670 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pt2519515 2005-09-10
  • 打赏
  • 举报
回复

vI = 2
for vI=20 to 2 step -1
Set xlsheet = xlbook.Worksheets(vI)
xlsheet.delete
next vI
Siounex 2005-09-03
  • 打赏
  • 举报
回复
因为你在删除一个sheet后,sheet就往前移了,所以就会导致定位出错。根据你的要求,试试看这个:

vI = 2
startNum=vI '起始的删除页

Do While vI<= 20
Application.DisplayAlerts = False '去除删除提示警告
workbooks("workBookName").sheets(startNum).delete
vI = vI + 1
Loop
Application.DisplayAlerts = True
sporter523 2005-09-03
  • 打赏
  • 举报
回复
楼上的方法真的不错
aperyx 2005-06-10
  • 打赏
  • 举报
回复
在開始時加入此句
Application.DisplayAlerts = False  ‘不顯示excel的警告
DVS 2005-06-09
  • 打赏
  • 举报
回复
有必要用它吗?按住CTRL,选择要删除的若干个工作表,然后快捷菜单--删除不就成了?
DawnPine 2005-06-06
  • 打赏
  • 举报
回复
顺便问一句
我测试的时候,当执行到delete这句时会弹出对话框,你是如何处理的?
DawnPine 2005-06-06
  • 打赏
  • 举报
回复
vi=2
Do While Worksheets.Count > vi
Worksheets(vi+1).Delete
Loop

试试这个

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧