Excel makró VBA

Sziasztok

Segítséget szeretnék kérni az alábbiakban. Van egy excel munkafüzetem, amelynek egy munkalapjára, beimportálok adatokat egy makróval egy .csv fájból. A,B,C oszlopba rakja őket. Egy olyan makrót szeretnék írni, ami a C oszlopban keres, és ha egyest talál egy cellában (amúgy vagy egy vagy 0 van bennük), akkor azt a sort kimásolja erre a munkalapra, és egy teszőleges helyre, csak nem az abc oszlopra. Magyarul keresse meg és másolja ki azokat a sorokat, amik c oszlopa 1-est tartalmaz. Makró rögzítéssel próbálkoztam, melyből a sorba rendezést (bár ez nem szükséges) és a keresést kivettem, de ugye csak sajnos egy találatig írta le sajnos.

Köszönöm a segítségeket Üdv

Hozzászólások

Tehát, egy cella értéket már le tudod kérdezni, tudsz már összehasonlítani, a feladat, hogy ez minden sornál megtörténjen:

"de ugye csak sajnos egy találatig írta le sajnos."

ciklusok

szia
Ezt próbáltam használni, de a végét úgy szeretném átírni, hogy fixen a munkafüzet adott tartományába végezze a másolást. PL D1 -től kezdje és ne változók legyenek benne. A törlés a végén nem fontos, ki is vehetem, mert a kigyűjtés a lényeg.

Üdv:

Sub masolas()

Dim i, j, p, n As Integer 'i-sor, j-oszlop, n- sor a Munka2-n
n = 1
For i = 1 To 20
p = InStr(1, Cells(i, 3).Value, "1", vbTextCompare)
If p > 0 Then 'ha megtalálja
For j = 1 To 3
Worksheets("Munka2").Cells(n, j).Value = Cells(i, j).Value
Next j
n = n + 1
'Rows(i).Delete 'sor törlés
'i = i - 1 'a törlés miatt

End If
Next i
MsgBox "Kész!"
'A fenti kód végigmegy az 3.oszlopon (1-től 20-ig). Ha az első oszlop cellájában lévő szövegben megtalálja az "informatika" szót (InStr),
'akkor ezt a sort (most 10 oszlopig) átmásolja a Munka2 munkalapra.
End Sub