Ci sono differenti metodi a seconda che tu voglia portare in VBA il valore di una singola cella o di un insieme di celle (range).
Ti indico il primo e ti accenno il secondo

Dim a as double, b as double
a=Worksheets("Foglio 1").Cells(1, 1).value
Worksheets("Foglio 2").Cells(1, 1).value=b

Sostituendo agli indici ri riferimento della cella un contatore puoi effettuare un ciclo per la lettura del valore e con un istruzione condizionale (if o select case) puoi scegliere se memorizzare o no il valore.
Nel caso i dati siamo molti ti consiglio vivamente di lavorare con i range e limitare al minimo gli interventi sul foglio, ad esempio:

Option base 1
Dim Dati () as double, Dati2()
with Worksheets("Foglio 1")
dati()=.Range(.Cells(1, 1), .Cells(20, 1)).value
end with

'Hai copiato in dati() i valori del campo "A1:A20". Lavori sulla matrice dati, estrai i valori su Dati2() ed alla fine incolli i valori sul foglio 2

with Worksheets("Foglio 2")
.Range(.Cells(1, 1), .Cells(20, 1)).value=dati2()
end with

NB fai attenzione alla definizione dimensionale dei range e delle matrici, potresti non incollare dei valori se la prima è minore della seconda.

Buon lavoro