Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Copiare righe da un foglio all'altro a determinate condizion

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

Copiare righe da un foglio all'altro a determinate condizion

Postdi geoclabri » 23/08/18 11:08

Codice: Seleziona tutto
Sub archivia()

Application.ScreenUpdating = False
Dim Ws1 As Worksheet
Dim Ws2 As Worksheet
Set Ws1 = Sheets("PL") 'chiama Ws1 il foglio PL'
Set Ws2 = Sheets("DATABASE") 'chiama Ws2 il foglio DATABASE'
UR1 = Ws1.Range("d" & Rows.Count).End(xlUp).Row 'Assegna a UR1 il range fino all'ultima riga. Quel "d" cosa vuol dire?'
For RR1 = 5 To UR1 ' inizia il ciclo di ricerca dalla riga 5 fino ad UR1'
        If Ws1.Range("l" & RR1).Value <> "" Then ' Se il valore del range (cosa vuol dire quello tra parentesi) è diverso da "" va al passo successivo'
        UR2 = Ws2.Range("a" & Rows.Count).End(xlUp).Row + 1 'cerca nel foglio 2 la prima riga vuota
        Ws1.Range("a" & RR1 & ":m" & RR1).Copy ' seleziona dal foglio 1 la riga dalla colonna a alla colonna m'
        Ws2.Range("a" & UR2).PasteSpecial Paste:=xlPasteValues ' copia la selezione nel foglio 2 nella prima riga vuota'
               
        End If
Next RR1 ' esegue un altro ciclo'
Application.CutCopyMode = False
MsgBox "   Archiviato"
End Sub


Mi rispondete alle domande che ho messo in questo codice?
Io dovrei modificare nel ciclo di ricerca il fatto che copi nel database tutte le righe non vuote "" ed invece dovrei fargli copiare solo quelle che nella colonna V hanno il valore 1
geoclabri
Newbie
 
Post: 5
Iscritto il: 22/08/18 00:13

Sponsor
 

Re: Copiare righe da un foglio all'altro a determinate condi

Postdi wallace&gromit » 23/08/18 14:39

In entrambi i casi si specifica in quale colonna cercare i dati:
nel primo caso la variabile UR1 riceve il valore dell'ultima riga della colonna D (segnato con "d") in cui ci sono dati;
nel secondo si va a verificare dove è che la colonna L è vuota "l".

La variabile RR1 è quella che ti permette di fare scorrere le righe ad 1 ad 1.
Se la tua ricerca va fatta sulla colonna V e il criterio è il valore 1 l'istruzione diventa:
Codice: Seleziona tutto
...
For RR1 = 5 To UR1
        If Ws1.Range("V" & RR1).Value = 1
...
Office2016 + 2019 su win10
Avatar utente
wallace&gromit
Utente Senior
 
Post: 2054
Iscritto il: 16/01/12 14:21

Re: Copiare righe da un foglio all'altro a determinate condi

Postdi geoclabri » 24/08/18 09:50

grazie. Molto utile
geoclabri
Newbie
 
Post: 5
Iscritto il: 22/08/18 00:13


Torna a Applicazioni Office Windows


Topic correlati a "Copiare righe da un foglio all'altro a determinate condizion":


Chi c’è in linea

Visitano il forum: Nessuno e 25 ospiti