VBA CopyFolder复制错误的文件夹

时间:2019-03-25 14:00:18

标签: excel vba

我有一个小宏,应该将一个文件夹及其所有内容从一个文件路径复制到另一个文件路径。问题是,它正在复制错误的文件夹。而是从该文件夹复制第一个子文件夹(但不复制其内容),然后以“找不到路径”错误进行错误输出。有时它将复制主文件夹,然后仅复制相同的第一个子文件夹,但不包含其内容,然后再次出现“找不到路径”错误。

   Dim strFilePath As String, techfolder As String

   strFilePath = "G:\Data\FolderName\PROJECTS\2019\AnotherFolderName\Test_Area\" & year2 & " - Testing\6. Verification\" & quarter & "\3 - Verification Emails Received\YetAnotherFolderName"

   techfolder = "G:\Data\CompanyName\FolderName\AnotherFolderName\Name" & year2 & " " & quarter2 & "\Completed\"

       Dim FSO As Object

               If Right(techfolder, 1) = "\" Then
                   techfolder = Left(techfolder, Len(techfolder) - 1)
               End If

               If Right(strFilePath, 1) = "\" Then
                   strFilePath = Left(strFilePath, Len(strFilePath) - 1)
               End If

           Set FSO = CreateObject("scripting.filesystemobject")

               If FSO.FolderExists(techfolder) = False Then
                   MsgBox techfolder & " doesn't exist"
                   Exit Sub
               End If
   Debug.Print (strFilePath)
   Debug.Print (techfolder)
            FSO.CopyFolder Source:=techfolder, Destination:=strFilePath
           MsgBox "You can find the files and subfolders from " & techfolder & " in " & strFilePath

我已经尝试了一些不同的CopyFolder方法,这些方法通过某些互联网搜索使用if逻辑等,但都以这种通用形式进行。他们都没有正确复制该文件夹及其所有子文件夹/内容。

我已经通过调试检查了我的文件路径,它们很好,我可以将它们复制/粘贴到文件资源管理器中,并且可以顺利导航。另外,子文件夹复制暗示它似乎是正确的。

手动复制文件夹或其子文件夹没有问题。

ETA:大约有31个子文件夹,每个子文件夹包含一个excel和一个pdf。

变量值为:

季度是2018年第三季度 Year2是2018 Quarter2是Q3

Year2和Quarter2由Quarter的子字符串组成,Quarter是通过输入框填充的变量。

   year2 = Mid(quarter, 4, 4)
   quarter2 = Mid(quarter, 1, 2)

0 个答案:

没有答案