我想浏览我的 Excel 工作表并找到具有特定名称的工作表,如果找到则删除该工作表。之后,我想在所有具有该名称的现有工作表之后创建一个工作表。我的代码如下:
For Each ws In Worksheets
If ws.Name = "asdf" Then
Application.DisplayAlerts = False
Sheets("asdf").Delete
Application.DisplayAlerts = True
End
End If
Next
Sheets.Add(After:=Sheets(Sheets.count)).Name = "asdf"
但是,这不会在一次运行代码中执行这两项操作。如果该工作表已经存在,它只会删除该工作表,而不是像我想要的那样创建一个新工作表。我需要再次运行它才能创建一个新的。
如何修复代码以删除旧工作表(如果存在)并创建新工作表?
去除End
语句,您的代码在找到并删除工作表后终止asdf
.
For Each ws In Worksheets
If ws.Name = "asdf" Then
Application.DisplayAlerts = False
Sheets("asdf").Delete
Application.DisplayAlerts = True
End If
Next
Sheets.Add(After:=Sheets(Sheets.count)).Name = "asdf"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)