Alguém pode me auxiliar em uma macro, gostaria de mover uma lista de arquivos que quero determinar em uma coluna do excel o link para uma lista de lugares diferentes que quero determinar em outra coluna, a macro abaixo estou usando porém ela serve apenas de 1 caminho para outro:
Option Explicit
Public Declare Function SHFileOperation Lib "shell32.dll" _
Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) _
As Long
Public Const FO_COPY As Long = &H2
Public Const FOF_ALLOWUNDO As Long = &H40
Public Type SHFILEOPSTRUCT
hWnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Boolean
hNameMappings As Long
lpszProgressTitle As String
End Type
Public Sub CopiarArq(Origem As String, Destino As String)
Dim RST As Long
Dim FLOP As SHFILEOPSTRUCT
FLOP.hWnd = 0
FLOP.wFunc = FO_COPY
FLOP.pFrom = Origem & vbNullChar & vbNullChar
FLOP.pTo = Destino & vbNullChar & vbNullChar
FLOP.fFlags = FOF_ALLOWUNDO
RST = SHFileOperation(FLOP)
If RST <> 0 Then
MsgBox Err.LastDllError, vbCritical Or vbOKOnly
Else
If FLOP.fAnyOperationsAborted <> 0 Then
MsgBox "Falha na cópia!!!", vbCritical Or vbOKOnly
End If
End If
End Sub
Sub Copiar()
CopiarArq Range("h1").Value, Range("I1").Value
End Sub
Eu consigo alterar apenas esta parte:
Sub Copiar()
CopiarArq Range("h1").Value, Range("I1").Value
End Sub
não posso usar o Range para mais de uma celula no conceito acima..
Postado : 17/08/2016 6:00 am