选择具有非特定名称VBA的工作表

Roc*_*oca 0 excel vba

我正在尝试在每天从网上下载的工作簿上执行一个宏,它只有一个随着下载日期相应更改名称的工作表(例如:"vendas 201709294524455"),我需要将此工作表设置为变量,但是我怎么能用这个dinamyc名字改变呢?

我试过了:

Dim Sh1           As Worksheet
Dim Sh2           As Worksheet
Dim FindCell      As Range

Set Sh2 = ThisWorkbook.Worksheets("book1")
Set Sh1 = Workbooks("vendas.xlsm").Worksheets("*vendas*")

LastRow = Sh2.Range("d65536").End(xlUp).Row

'...rest of the code
Run Code Online (Sandbox Code Playgroud)

......其余的代码

但是不起作用......任何想法?

Sco*_*ner 5

因为它只有一个工作表才使用:

Set Sh1 = Workbooks("vendas.xlsm").Worksheets(1)
Run Code Online (Sandbox Code Playgroud)

Worksheets()允许索引或字符串名称.只有一张纸,索引始终1是一张纸.请参阅:https://msdn.microsoft.com/en-us/vba/excel-vba/articles/worksheet-object-excel

这将把Sh1设置为工作簿中的第一个工作表,无论名称如何.