Лучший способ ссылаться на рабочую книгу в VBA, когда имя рабочей книги меняется каждый день? - PullRequest
0 голосов
/ 16 апреля 2019

Как лучше всего ссылаться на рабочую книгу, когда название будет меняться каждый день, из другой рабочей книги? У меня есть книга, которая ссылается на несколько листов, и я стремлюсь каждый день загружать новые данные при загрузке отчета, но имя отчета меняется (например, InvoiceSoldReport2019-4-15 [Режим совместимости] по сравнению с InvoiceSoldReport2019-4-16 [ Режим совместимости]).

Ответы [ 2 ]

1 голос
/ 16 апреля 2019

Если вы знаете, что в названии книги изменяется только дата, вы можете динамически включить дату в имя в виде строки.Нравится:

Dim current_date as Date
Dim wb_name as string
Dim wb_open as Workbook
...
date = ...
wb_name = "InvoiceSoldReport"
Set wb_open = Workbooks.Open(wb_name & date) 'concatenate name and date
....
0 голосов
/ 16 апреля 2019

вы можете использовать средство выбора файлов в вашей работе.

Dim wb2 As Workbook

Dim fdl As FileDialog
Dim FileChosen As Integer

Set fdl = Application.FileDialog(msoFileDialogFilePicker)

fdl.Title = "Please Select the XXX file"
'Set the InitialFile Path
fdl.InitialFileName = "D:\"
'Set the Folder View
fdl.InitialView = msoFileDialogViewSmallIcons
'Set the filter
fdl.Filters.Clear
fdl.Filters.Add "XLSX", "*.XLSX"
'Optional if you know the file type is constant, else no need of filter
FileChosen = fdl.Show

If FileChosen <> -1 Then
'Not choosen anything / Clicked on CANCEL
MsgBox "No file choosen"

Else
'fdl.SelectedItems(1) display name and complete path of file chosen
 Set wb2 = Workbooks.Open(fdl.SelectedItems(1))
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...