pic omnic wrote:
> Ma io avrei una necessità aggiuntiva: per ogni riga copiata,
> aggiungere nel foglio di destinazione,per es nella colonna A, il nome
> del file di provenienza.
ho semplificato (malamente) il codice, togliendo l'opzione definizioni
esplicite e sendendo non necessaria la spunta a mano del WSH.
--8<---------------cut here---------------start------------->8---
Sub Sfoglia_Files()
Set objFSY = CreateObject("Scripting.FileSystemObject")
Set objFOL = CreateObject("Scripting.FileSystemObject")
Set objFIL = CreateObject("Scripting.FileSystemObject")
Set wbTo = ThisWorkbook
Set wsTo = wbTo.Sheets(1)
strPath = "C:\Prova" '''QUI IL PERCORSO
Set objFOL = objFSY.GetFolder(strPath)
For Each objFIL In objFOL.Files
x = wsTo.Range("A" & wsTo.Rows.Count).End(xlUp).Row + 1
Set wbFrom = Application.Workbooks.Open(objFIL)
Set wsFrom = wbFrom.Sheets(1)
With wsFrom
wsTo.Cells(x, 1) = objFIL.Name
i = .Range("A" & .Rows.Count).End(xlUp).Row
Set rngCopy = .Range("A4:Q" & i)
rngCopy.Copy wsTo.Cells(x + 1, 1)
End With
wbFrom.Close 0
Next
End Sub
--8<---------------cut here---------------end--------------->8---