- 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