Condividi:        

CREARE FILE RIEPILOGO

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

CREARE FILE RIEPILOGO

Postdi scanacc » 03/10/23 01:27

Buona sera,
tra breve mi arriveranno circa 200 FILE che dovrò aprire uno ad uno e ricopiare il contenuto in un unico FILE RIEPILOGO.xlsx
I FILE che mi arriveranno (che sono denominati COGNOME NOME.xlsx hanno 11 colonne e 150 righe.
Chiedo a voi se esiste un modo che mi consenta di risparmiare tempo sia oltre me anche ad altri miei colleghi che hanno lo stesso lavoro da svolgere.
Se esistesse un metodo che mi consentisse di mettere tutti i file che mi arrivano in una cartella e poi con una formula o una macro mi venissero copiati nel FILE RIEPILOGO, sarebbe perfetto.
Grazie per il sicuro aiuto che vorrete darmi

PS
Se può servire, il FILE RIEPILOGO ha (nel Foglio 3) l'elenco di coloro che mi devono inviare il FILE NOME COGNOME.xlsx e sono posizionati nelle celle che vanno da A1 a A200
scanacc
Utente Senior
 
Post: 347
Iscritto il: 06/12/15 10:30

Sponsor
 

Re: CREARE FILE RIEPILOGO

Postdi scanacc » 03/10/23 01:49

CORREGGO
Se esistesse un metodo che mi consentisse di mettere tutti i file che mi arrivano in una cartella e poi con una formula o una macro mi venissero copiati nel FILE RIEPILOGO --> NELLO STESSO FOGLIO <--, sarebbe perfetto.
scanacc
Utente Senior
 
Post: 347
Iscritto il: 06/12/15 10:30

Re: CREARE FILE RIEPILOGO

Postdi Anthony47 » 03/10/23 10:31

Se hai Outlook allora potresti creare un "regola" che individua le mail di cui vuoi salvare gli allegati; poi una macro di Outlook (che ho già usato in passato) può occuparsi di salvare gli allegati di quella mail.
Se hai Outlook, prova a creare una "regola" che individui le mail di cui parli e le sposti in una cartella specifica in PostaRicevuta; quando ce l'hai la useremo per eseguire la macro SalvaAllegati.
Ovviamente questo ha senso se il processo e' da ripetere periodicamente, altrimenti ti conviene farlo a mano e fai prima.

Una volta che i file xlsx da importare sono in una directory specifica allora sul file RIEPILOGO puoi usare questa macro:
Codice: Seleziona tutto
Sub ImportAll()
Dim myPath As String, myF As String, myDone As String
Dim myNext As Long, fCnt As Long
'
myPath = "C:\PROVA\"            '<<< La directory dei file, con \ finale
myDone = "C:\PROVA\PIPPO\"      '<<< Una directory dove muovere i file, con \
'
myF = Dir(myPath & "*.xlsx")
Do Until myF = ""
    fCnt = fCnt + 1
    On Error Resume Next
    myNext = 1
    myNext = Range("A:L").Find(What:="*", LookIn:=xlValues, After:=Range("A1"), _
        SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
    On Error GoTo 0
    Workbooks.Open myPath & myF, 0, True
    Sheets("Origine").Select                                      '<<< Il foglio da leggere e importare
    Range("A:L").Resize(ActiveSheet.UsedRange.Rows.Count).Copy _
      ThisWorkbook.Sheets("Master").Cells(myNext, "A")
    ActiveWorkbook.Close False
    Name myPath & myF As myDone & myF
    myF = Dir
DoEvents
Loop
MsgBox ("Completato; " & fCnt & " file trasferiti in " & myDone)
End Sub

Il codice va inserito in un Modulo Standard del file RIEPILOGO (che quindi deve essere in formato .xlsm).
Configura correttamente le tre istruzioni marcate <<<; i percorsi che scrivi devono già esistere sul tuo disco.

Quando lanci la Sub ImportAll, essa cerca i file .xlsx nella directory indicata, li importa nel foglio MASTER di RIEPILOGO.xlsm, li sposta nella seconda directory indicata.
Un messaggio informa sul completamento delle operazioni

Prova...
Avatar utente
Anthony47
Moderatore
 
Post: 19169
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: CREARE FILE RIEPILOGO

Postdi scanacc » 04/10/23 10:54

Anthony, come sempre SPETTACOLARE.
Ho solo un problema.
Il foglio1 del FILE COGNOME NOME.xlsx che mi invieranno, non si chiama FOGLIO1 ma si chiama COGNOME e NOME di chi me lo manda e quindi questo mi provoca un debug.
Come posso fare?

PS
Se può essere di aiuto, il FIle COGNOME E NOME che mi invieranno ha SOLTANTO 1 Foglio (che come ho detto si chiama Cognome Nome,xlsx)
scanacc
Utente Senior
 
Post: 347
Iscritto il: 06/12/15 10:30

Re: CREARE FILE RIEPILOGO

Postdi scanacc » 04/10/23 11:14

CORREGGO
Non è sicuro che i FILE COGNOME NOME.xlsx che mi invieranno abbia un unico Foglio
scanacc
Utente Senior
 
Post: 347
Iscritto il: 06/12/15 10:30

Re: CREARE FILE RIEPILOGO

Postdi Anthony47 » 04/10/23 13:58

Ma il contenuto che interessa e' sempre ad esempio nel foglio N°1? Perchè allora si potrebbe usare
Codice: Seleziona tutto
Sheets(1).Select


Oppure (se l'ipotesi sopra non è perseguibile) siamo certi che il nome foglio sarà uguale al nome file? Quindi file "Nome Cognome.xlsx" e foglio "Nome Cognome". Cioe' non nome foglio "NomeCognome", "Cognome Nome", "Nome_Cognome", "Cav Nome Cognome" e le altre infinite varianti fantozziane
Avatar utente
Anthony47
Moderatore
 
Post: 19169
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: CREARE FILE RIEPILOGO

Postdi scanacc » 04/10/23 20:31

Il nome del foglio sarà sempre uguale a COGNOME e NOME del file COGNOME NOME.xlsx e se ci saranno delle eccezioni lo sistemerò manualmente
scanacc
Utente Senior
 
Post: 347
Iscritto il: 06/12/15 10:30

Re: CREARE FILE RIEPILOGO

Postdi Anthony47 » 04/10/23 21:35

Allora sostituisci
Sheets("Origine").Select
con
Codice: Seleziona tutto
    Sheets(Split(myF & " . ", ".", , vbTextCompare)(0)).Select
Avatar utente
Anthony47
Moderatore
 
Post: 19169
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "CREARE FILE RIEPILOGO":


Chi c’è in linea

Visitano il forum: raimea e 5 ospiti