求修改以下3个 excel VBA代码

1:下面代码要求这两工作表不能打印但是运行发生错误Sub打印签收()ForEachShInWorksheetsIfSh.Name<>"签收单(不能删除)"Or"模板"Th... 1:下面代码要求这两工作表不能打印 但是运行发生错误

Sub 打印签收()
For Each Sh In Worksheets
If Sh.Name <> "签收单(不能删除)" Or "模板" Then
Sh.PrintOut Copies:=2
End If
Next
End Sub
2:下面代码要求这两工作表不能删除, 其它全部删除

Sub 批量删除签收单2()
Application.DisplayAlerts = False
For Each Sh In Worksheets
If Sh.Name <> "签收单(不能删除)" Or "模板" Then
sh.Delete
end if

Next
Application.DisplayAlerts = True
End Sub
3:以下打码为什么删除的工作表都是 隔一个删除一个 总是保留一部分工作表
Sub 批量删除签收单2()
Application.DisplayAlerts = False
For i = 3 To Worksheets.Count
Sheets(i).Delete
Next
Application.DisplayAlerts = True
End Sub
展开
 我来答
平阳虎01
高粉答主

2015-10-25 · 每个回答都超有意思的
知道大有可为答主
回答量:3.7万
采纳率:75%
帮助的人:5011万
展开全部
第1、2段代码中的
If Sh.Name <> "签收单(不能删除)" Or "模板" Then

改为
If Sh.Name <> "签收单(不能删除)" Or Sh.Name <> "模板" Then

第3段代码中的
For i = 3 To Worksheets.Count

改为
For i = Worksheets.Count To 3 Step -1

试试吧。
追问
谢谢啊,非常正确,没有问题了。
追答
希望能帮到您,同时也希望得到您的认可。不要忘了采纳答案哟。呵呵
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式