Como copiar uma pasta em vba (com exemplo)


Você pode usar o método CopyFolder no VBA para copiar uma pasta de um local para outro.

Aqui está uma maneira comum de usar esse método na prática:

 Sub CopyMyFolder()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"

'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder

End Sub

Esta macro específica copia a pasta chamada current_data da pasta Documentos para a área de trabalho .

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: como copiar pastas usando VBA

Digamos que temos uma pasta chamada current_data localizada em uma pasta chamada Documents :

Agora digamos que queremos usar o VBA para copiar toda essa pasta para o Desktop , que atualmente contém duas pastas:

Antes de usar o VBA para copiar este arquivo, devemos primeiro habilitar o Microsoft Scripting Runtime no editor VB.

Para fazer isso, abra o editor VB, clique em Ferramentas e em Referências :

Na nova janela que aparece, role para baixo até ver Microsoft Scripting Runtime e marque a caixa ao lado dele. Em seguida, clique em OK .

Então podemos criar a seguinte macro para copiar a pasta:

 Sub CopyMyFolder()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"

'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder

End Sub

Assim que esta macro for executada, a pasta chamada current_data será copiada da pasta Documentos para a área de trabalho :

A pasta current_data original também permanecerá na pasta Documentos .

Nota : Você pode encontrar a documentação completa do método CopyFolder aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

Como criar pastas usando VBA
Como deletar pastas usando VBA
Como listar arquivos em uma pasta usando VBA

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *