Переименовать FileNames с помощью конкатенации - PullRequest
0 голосов
/ 26 марта 2019

У меня в настоящее время есть электронная таблица Excel, которая имеет следующий вывод

Old_Name               PlayerID        PlayerName
20190324181982.MTS      1               Jake Smith
20190324181963.MTS      2               Greg Johnson
20190324181923.MTS      3               Jake De Maria

В столбце «Старое имя» отслеживаются видеофайлы, которые я загружаю на свой компьютер.Я попытался использовать код VBA (см. Ниже), который идентифицирует «Старое имя» в сохраненной папке и меняет его на playerid + playername.Например, 1 Джейк Смит.

Sub autofilename()
    Dim dca As Workbook
    Dim checklist As Worksheet
    Dim oldfilepath As String
    Dim old_name As String
    Dim playerid As String
    Dim playername As String
    Dim lastrow As Integer

    Set dca = ActiveWorkbook
    Set checklist = dca.Sheets("Venezuela_list")
    lastrow = checklist.Cells(Rows.Count, "A").End(xlUp).Row
    oldfilepath = "C:\Users\nhwal\Docs\Practice"

    For a = 2 To lastrow
        old_name = checklist.Cells(a, 1).Value
        playerid = checklist.Cells(a, 2).Value
        playername = checklist.Cells(a, 3).Value

        On Error Resume Next
        Name old_name & old_name As old_name & playerid & playername & " MTS.url"
    Next a
End Sub

К сожалению, код, который я пробовал, не меняет имена моих файлов.Кто-нибудь знает, как настроить мой код, чтобы заставить файлы менять имена?Заранее спасибо!

1 Ответ

0 голосов
/ 26 марта 2019

Вы не можете попробовать:

Option Explicit

Sub trst()

    Dim Row As Long, LastRow As Long
    Dim FileLocation As String

    With ThisWorkbook.Worksheets("Sheet1") '<- Change Workbook / Sheet names

        LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
        FileLocation = "C:\Users\nhwal\Docs\Practice\"

        For Row = 2 To LastRow
            Name FileLocation & .Range("A" & Row).Value As FileLocation & .Range("A" & Row).Value & " " & .Range("B" & Row).Value & " " & .Range("C" & Row).Value & " MTS.url"
        Next Row

    End With

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