Excel VBA-Mkdir возвращает путь, который не найден

#excel #vba

#excel #vba

Вопрос:

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

Когда я пытаюсь запустить код, я получаю ошибку времени выполнения «Путь не найден» в функции MKdir, я проверил, и все пути, предшествующие этому моменту, верны.

Есть идеи по поводу того, что приводит к этой ошибке?

Спасибо

 'Add photos
Private Sub CommandButton3_Click()

Dim fileExplorer As Integer
Dim photo As String
Dim Path1 As String
Dim P As String
Dim FSO As Scripting.FileSystemObject

Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = True
fileExplorer = Application.FileDialog(msoFileDialogOpen).Show

If fileExplorer <> 0 Then

   photo = Application.FileDialog(msoFileDialogOpen).SelectedItems(1)

Else

MsgBox ("None file has been selected")

Exit Sub

End If

dt_value = DTPicker1.Value
Syst = ComboBox1.Value

Path1 = dt_value amp; "-" amp; Syst

P = "C:Folder" amp; "" amp; Path1

MkDir (P)

Set FSO = New Scripting.FileSystemObject
Call FSO.CopyFile(photo, P, False)

MsgBox ("Your photos have been imported")

End Sub
  

Комментарии:

1. Вы строите Path1 из Date . Содержит ли он разделители путей («)?

2. Либо dt_value, либо Syst содержат недопустимые значения для пути, подобного /

3. Также нет причин использовать, MkDir когда у вас есть FileSystemObject — я бы предложил использовать FileSystemObject.CreateFolder вместо этого.

4. @Comintern Вы имеете в виду даты? Это переменная dt_value из локального окна #02.05.2019#

5. Как отмечалось выше, вам необходимо отформатировать дату, чтобы удалить косые черты.