我花了一些时间寻找答案,但没有找到。
我正在尝试建立一个宏,根据使用者在输入方块中的输入来选取多个工作表,并合并LIKE运算子来一次选取所有的工作表。每个工作表都有不同的名称,但都是以5位数开始,例如20001,我可以将其做为选取的准则。
如果我硬编码5位数的值并一次选择多个工作表,我可以让它工作,但不能让它与输入框的值一起工作。我已经尝试了不同的输入框值/变量的迭代,但没有任何运气。
下面的示例带有输入框:
Public Sub SixPayTest()
Dim Bunumber As String
Dim ws As Worksheet
Bunumber = Application.InputBox("Enter BU #")
For Each ws In ActiveWorkbook.Sheets
If ws.Name Like bunumber Then ws.Select (False)
Next ws
End Sub
下面的这个工作示例将选择所有我需要的工作表,但没有输入框:
Public Sub SixPayTest()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Sheets
If ws.Name Like "*20001*" Then ws.Select (False)
Next ws
End Sub
1条答案
按热度按时间5gfr0r5j1#
您需要为类似值添加通配符。例如:
更清楚的是更新之前的值。
此外,如果要查找名称以bnumber开头的工作表,请不要在字符串中添加第一个星号“*”。