Vba 循环浏览选定图纸(设置activewindow.SELECTED图纸)
我的目标是仅在选定的图纸中执行VBA代码 我尝试了以下方法:Vba 循环浏览选定图纸(设置activewindow.SELECTED图纸),vba,excel,Vba,Excel,我的目标是仅在选定的图纸中执行VBA代码 我尝试了以下方法: 1 Sub selectedsheet() 2 Dim sh As Worksheet 3 Dim selectedshs As Worksheets 4 5 Set selectedshs = ActiveWindow.SelectedSheets 6 7 For Each sh In selectedshs 8 Ms
1 Sub selectedsheet()
2 Dim sh As Worksheet
3 Dim selectedshs As Worksheets
4
5 Set selectedshs = ActiveWindow.SelectedSheets
6
7 For Each sh In selectedshs
8 MsgBox sh.Name
9 Next sh
10 End Sub
但是,在第5行中,出现运行时错误13-类型不匹配
任何帮助都将不胜感激。谢谢 您是否可以只使用所选工作表的计数(即activewindow.SelectedSheets.count)然后使用整数在这些工作表(即activewindow.SelectedSheets(1.name))之间循环?您需要将所选工作表声明为通用对象
Sub selectedsheet()
Dim sh As Worksheet
Dim selectedshs As Object
Set selectedshs = ActiveWindow.SelectedSheets
For Each sh In selectedshs
MsgBox sh.Name
Next sh
End Sub
或
尝试将
Selectedshs
更改为图纸集合(工作表和图纸对象之间存在子项区别),这样做有效。谢谢!抱歉,如果我没有包括代码的其他部分,因为它相当长。我不能这样做,因为在循环浏览选定的工作表之前,我添加了一个新工作表,从而使新工作表成为唯一选定的工作表。不过还是要谢谢你!
Sub selectedsheet()
Dim sh As WorkSheet
For Each sh In ActiveWindow.SelectedSheets
MsgBox sh.Name
Next sh
End Sub