Temo che lo stesso approccio della discussione linkata da Flash sia duro da applicare, trattandosi di copiare 40 e oltre celle.
Si puo' pero' riciclare la logica del ciclo per aprire il singolo file e copiare quello che serve all' interno del file DB. Ad esempio:
- Codice: Seleziona tutto
Sub PCF_DP8()
Dim SourceDir As String, ShName As String, I As Long
SourceDir = "C:\Users\UTENTE \Documents\" '<<< La tua directory con \ finale
myCFile = Dir(SourceDir & "\*.xls*")
Do
If myCFile = "" Then Exit Do
Workbooks.Open Filename:=SourceDir & myCFile
Sheets(1).Move Before:=ThisWorkbook.Sheets(1)
Windows(myCFile).Close savechanges:=False
'
'*** altre istruzioni per cancellare dal foglio corrente le aree che non servono
'
DoEvents
myCFile = Dir
Loop
End Sub
Creati un file vuoto, inserisci in Modulo1 la macro e salvalo col nome DB.xlsm; personalizza l' istruzione marcata <<< e poi mandala in esecuzione: ti replichera' nel file DB tutti i fogli degli N file trovati; se necessario inserisci nella posizione marcata *** le istruzioni che servono a cancellare le parti del foglio che non desideri importare, istruzioni che puoi ottenere registrando in proprio una macro mentre esegui disciplinatamente tutte le cancellazioni che ti servono.
Questa e' stata la mia interpretazione della richiesta, che ha omesso particolari importanti su dove importare le informazioni.
Se non e' quello che chiedevi allora prova a descrivere nuovamente.
Comunque fai sapere.