gpt4 book ai didi

vba 选择/删除除第一个以外的所有工作表

转载 作者:行者123 更新时间:2023-12-04 21:12:07 33 4
gpt4 key购买 nike

我在移除不必要的床单时遇到了问题。我查看了不同的论坛并将不同的解决方案混合在一起。
此宏删除工作表(第一张工作表除外)。

Sub wrong()

Dim sht As Object
Application.DisplayAlerts = False
For Each sht In ActiveWorkbook.Sheets
If sht.Index <> 1 Then
sht.Delete
End If
Next

End Sub

这个解决方案可以还是可以改进?我还尝试直接对对象(工作簿、工作表)执行操作,但每次都失败了

最佳答案

你的代码可以工作(但你可以自己发现!)

你可以避免 If-Then-End如果通过直接从最后一张到第二张的表格索引循环,如下

Option Explicit

Sub wrong()
Dim i As Long

Application.DisplayAlerts = False
With Sheets '<--| reference active workbook 'Sheets' collection
For i = .Count To 2 Step -1 '<--| loop through referenced sheets index from last to the 2nd
.Item(i).Delete '<--| delete current index sheet
Next
End With
Application.DisplayAlerts = True
End Sub

关于vba 选择/删除除第一个以外的所有工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43274263/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com