В Excel VBA я пытаюсь собрать Sub, чтобы получить строку имен файлов, которые будут скопированы из одного места в другое, с номером столбца данной ячейки в качестве префикса к имени файла, чтобы они появлялись в новой папке.в том же порядке, что и в строке в Excel.Пока у меня все работает отлично, кроме той части, которая добавляет префикс номера столбца к имени файла.В настоящее время в этой части кода у меня есть cellname.Column, который не работает.
Я новичок в VBA, поэтому я пытался копировать и вставлять фрагменты кода со всего Stack Overflow идругие сайты, чтобы сделать эту работу, но пока ничего не делает.
Sub copyfiles()
Dim xRg As Range, xCell As Range
Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog
Dim xSPathStr As Variant, xDPathStr As Variant
Dim xVal As String
On Error Resume Next
Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
xSFileDlg.Title = "Please select the original folder:"
If xSFileDlg.Show <> -1 Then Exit Sub
xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\"
Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
xDFileDlg.Title = "Please select the destination folder:"
If xDFileDlg.Show <> -1 Then Exit Sub
xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\"
For Each xCell In xRg
xVal = xCell.Value + ".pdf"
If TypeName(xVal) = "String" And xVal <> "" Then
FileCopy xSPathStr & xVal, xDPathStr & cellname.Column & xVal
End If
Next
End Sub
Любая помощь будет принята с благодарностью!