对于包含不同类型的VBA Excel的组的每个下一个循环,键入不匹配



我正在Excel中编写一个宏,以提取在不同工作簿的各种工作表上找到的特定信息。唯一的问题是工作表的名称并不总是完全一致。但是,它们的名称确实包含"ExpandedEngReport"的常见字符串。为了解决这个问题,我试图使用带有 Like 命令的 FOR 循环搜索包含此字符串的工作表,以将工作表名称与"ExpandedEngReport"的部分字符串进行比较。

此代码段返回类型不匹配错误。我认为这可能是由于在 For 循环正在搜索的 ActiveWorkbook.Sheets 组(见附图 1(中找到的各种类型。

' Find and Select ExpandedEngReport Worksheet
Dim ws As Worksheet
Dim flg As Boolean
For Each ws In ActiveWorkbook.Sheets
If ws.Name Like "*ExpandedEngReport*" Then
ws.Select Not flg
flg = True
GoTo CONTINUE
End If
Next ws

标签CONTINUE指向我想在此工作表上执行的一组操作,一旦找到并选择。

ActiveWorkbook.Sheets 组包含许多不同类型的对象。这可能与问题有关吗?有什么办法吗?

您已将Dim ws As Worksheet变暗,并将其用作Sheets集合的循环变量,该集合可以同时包含ChartWorksheet对象

所以修复是

Dim ws As Worksheet
...
For Each ws In ActiveWorkbook.Worksheets

相关内容

  • 没有找到相关文章

最新更新