Использовать частичное имя файла при импорте из SharePoint с Excel VBA - PullRequest
0 голосов
/ 16 ноября 2018

Я пытаюсь открыть и импортировать значения в рабочую книгу из другой рабочей книги.Оба файла находятся в SharePoint и в одном каталоге.

Работает, пока целевой файл имеет определенное имя.Но файл будет иметь переменную начала и конца в имени.5 разных номеров + имя + переменная дата (72262-Faktureringsplan-2018-11-16).

Я пытался использовать *, но, похоже, он не работает с SharePoint.Как я могу использовать какие-то "шаблоны" для доступа к именам файлов в SharePoint?

Это часть кода, которая будет загружать файл:

Sub faktureringsplan()

Dim FileName As String
FileName = ActiveWorkbook.Path & "\72262-Faktureringsplan-2018-11-16.xlsx"
Set wb = Workbooks.Open(FileName)

ThisWorkbook.Sheets(1).Range("B10:B31").Value = wb.Sheets(1).Range("B2:B23").Value
MsgBox ("Ferdig")
wb.Close
End Sub

1 Ответ

0 голосов
/ 16 ноября 2018

Этот код пытается найти очень конкретное имя файла с '\ 72262-Faktureringsplan-2018-11-16.xlsx' на линии:

FileName = ActiveWorkbook.Path & "\72262-Faktureringsplan-2018-11-16.xlsx"

Подстановочный знак ("*") работает так, что он заменяет часть, которую вы хотите сопоставить, с чем угодно. Таким образом, простое изменение от вышеупомянутого до

"\72262-Faktureringsplan-*.xlsx" 

вернет имя файла с любой датой, начинающейся с '72262-Faktureringsplan' в вашем случае.

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

Format(date, "YYYY-MM-DD")

вернет сегодняшнюю дату в формате "2018-11-16" (дата этого ответа).

По сути, вы можете сделать что-то вроде этого:

FileName = ActiveWorkbook.Path & "\*-Faktureringsplan-" & Format(date, "YYYY-MM-DD") & ".xlsx"

Это будет соответствовать следующему: ANYTHING-Faktureringsplan-TODAY'S_DATE.xlsx

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