#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. Как отмечалось выше, вам необходимо отформатировать дату, чтобы удалить косые черты.