Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Copia dati tra fogli

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

Copia dati tra fogli

Postdi enrico43 » 09/12/16 20:32

Buonasera, ho cercato di spiegare nel file qual è l’obbiettivo e chiedo il Vs aiuto perché nel file allegato mi completa il trasferimento dati da un foglio all’altro esattamente in 49 minuti. Le prime volte l’ho bloccato dopo qualche minuto, ma quando ho visto che stava procedendo correttamente, l’ho lasciato terminare. La macro l’ho rimescolata decine di volte, ma niente. Sicuramente mi sto perdendo in un bicchier d’acqua. Uso Excel 2003.
Ringraziando per l’attenzione, porgo a tutti
Cordiali saluti
Enrico
http://www.filedropper.com/richiesta
enrico43
Utente Senior
 
Post: 208
Iscritto il: 13/09/14 15:33
Località: Fiumicino

Sponsor
 

Re: Copia dati tra fogli

Postdi Anthony47 » 10/12/16 03:00

Non hai allegato la tua macro corrente, quindi non si puo' vedere se c'era qualcosa di clamorosamente penalizzante nei tempi di esecuzione.
Ti propongo questa versione:
Codice: Seleziona tutto
Sub CercaPF()
Sheets("Foglio1").Select
Dim cl As Range, wDest As Worksheet, myNext As Long, myCol As Long
Dim myCells, dDest
'
Sheets(1).Select
Set zona = ActiveSheet.Range([A65535].End(xlUp), [A2])
Set wDest = Sheets(2)
myCells = Array("A1", "B8", "D6", "L6", "L2", "G2", "I2", "D3", "E3", "G3", "I3")
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
'
For Each cl In zona
    If cl <> "" Then 'And Merge.Cells = True Then
        myCol = 0
        myNext = wDest.Cells(Rows.Count, 1).End(xlUp).Row + 1
        For Each dDest In myCells
            myCol = myCol + 1
            wDest.Cells(myNext, myCol).Value = cl.Range(dDest).Value
        Next dDest
    End If
Next cl
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox ("Completato...")
End Sub

Fai sapere...
Avatar utente
Anthony47
Moderatore
 
Post: 17441
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Copia dati tra fogli

Postdi enrico43 » 10/12/16 10:35

Mi piace quel "Completato", poi sarai andato a dormire, spero.
Grazie molte Anth, io provavo con il loop inizialmente e non avevo riscontro sul foglio2, poi ho rimescolato diverse volte ed infine ho chiesto aiuto, che è arrivato alle 3 di notte.
Ti saluto e con te tutti i Mod del forum, che ringrazio anche per la passione e l'aiuto che dispensano ai "passanti" come me (che comunque è anni che Vi seguo e saccheggio).
Enrico
enrico43
Utente Senior
 
Post: 208
Iscritto il: 13/09/14 15:33
Località: Fiumicino

Re: Copia dati tra fogli

Postdi Anthony47 » 10/12/16 13:42

Attenzione che, complice la tarda ora e la tarda eta', ho sbagliato la sequenza delle istruzioni precauzionali in testa e in coda; come noterai, infatti, le istruzioni non si complementano:
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
. . .
. . .
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

In questo modo lascio pericolosamente Excel con gli "eventi" non abilitati (tipo macro di WorksheetChange, e simili), che e' sbagliato.

Sostituiscile con
Codice: Seleziona tutto
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
. . .
. . .
Application.ScreenUpdating = True
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic

Buona giornata
Avatar utente
Anthony47
Moderatore
 
Post: 17441
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Copia dati tra fogli

Postdi enrico43 » 10/12/16 21:51

Sempre preciso, grazie anche se io i Worksheets Change preferisco non usarli, un po perchè cambiando spesso fogli potrei causare danni, poi.....bè, mi stanno antipatici.
Ciao e grazie ancora.

OT Sto adattando ad un lavoro per l'ufficio personale la macro di Alfredo fatta a Wallace . Impressionante, e bravo Alfredino, ti sta a ruota. Beh, anche Flash non scherza. Devo dire che ho cambiato fornitori che fino a poco tempo fa erano il buon Ennius e Parson.
Vi saluto
enrico43
Utente Senior
 
Post: 208
Iscritto il: 13/09/14 15:33
Località: Fiumicino

Re: Copia dati tra fogli

Postdi Anthony47 » 12/12/16 10:24

"Bravo Alfredino" dovresti pero' scriverlo nella sua discussione, qui non so se lo leggera'...

Alla prossima
Avatar utente
Anthony47
Moderatore
 
Post: 17441
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Copia dati tra fogli

Postdi alfrimpa » 12/12/16 14:31

Leggo Anthony leggo :)

Ringrazio Enrico per le gentili parole e per il vezzeggiativo ma quanto a "starti a ruota" dissento :)

Ritengo di non essere in grado neanche di portarti la borsa :cry:

La classe non è acqua :)
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli


Torna a Applicazioni Office Windows


Topic correlati a "Copia dati tra fogli":


Chi c’è in linea

Visitano il forum: Nessuno e 56 ospiti