Как использовать объект String в качестве индекса для книги Excel? - PullRequest
0 голосов
/ 27 января 2020

У меня есть имена файлов Excel, которые я хочу открыть в массиве. Могу ли я использовать эти объекты String в качестве индекса рабочей книги?

Например:

nameText = "Revenue.xlsx"

Set myValues = Workbooks(nameText).Worksheets(1).Columns("J")

Я считаю, что у меня проблема с Workbooks(nameText) - что можно сделать, чтобы сделать эта работа?

1 Ответ

0 голосов
/ 27 января 2020

@ У BigBen правильный ответ, но я его немного расширю.

Вы можете создать ссылку на рабочую книгу, инициализировав и установив объект Workbook, а затем используйте его для обращения к нему. Обычно это считается наилучшей практикой, поскольку для этого не требуется, чтобы рабочая книга была уже открыта, поскольку вы открываете ее при назначении переменной.

Dim wb as Workbook: Set wb = Workbooks.Open('name of your workbook)

Затем вы можете обратиться к этой книге, используя wb, поэтому Set myValues = wb.Worksheets(1).Columns("J")

Но в целом, если рабочая книга открыта, вы можете абсолютно использовать строки для обращения к рабочим книгам и рабочим таблицам, используя имя файла в поле Index .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...