goof010
Gebruiker
- Lid geworden
- 4 jul 2008
- Berichten
- 9
Goedemorgen,
Het volgende is er aan de hand:
Ik heb een sheet met 800 regels. met een stuk of 12 kolommen vol met data.
de eerste drie kolommen zijn van belang deze kolommen moeten gecontroleerd worden of ze "(ongelijk) <> 0" zijn. Als een van de kolommen dus een waarde heeft anders dan 0 dan moet de gehele regel naar sheet2 gekopieerd worden. Ik heb het geprobeerd met de advanced filter. Maar dit gaat niet omdat je maar maximaal twee kolommen kan filteren.
Dus ben ik in vba aan de slag gegaan.
Dus iets van
For i = 7 To 772 'bekijk de tabel
If Range("A" & i).Value <> 0 or Range("B" & i).Value <> 0 or Range("C" & i).Value <> 0 Then CopyToRange = Range("Sheet1!A2")
Next i
kan iemand mij helpen met de juiste "If"
het betreft de volgende kolommen A7 tot A772, B7 tot B772 en C7 tot C772
is het verstandiger om te checken op bijvoorbeeld A7 B7 C7 te controleren of deze <>0 is dan de gehele regel te kopieren naar sheet2 of kan ik beter eerst kolom A7 tot A772 controleren op <>0 en dan kolom b en c? en daarna kopieren.
m'n gevoel zegt de eerste optie dus per regel te kijken en dan gelijk te kopieren.
maar mijn code mag ik niet gebruik maken van Range.
Moet ik eerst bijvoorbeeld:
m'n range definieren als in: dim rng1 as range , dim rng2 as range , etc
zodat het er als volgt uit komt te zien
For i = 7 To 772 'bekijk de tabel
If Rng1("A" & i).Value <> 0 or Rng2("B" & i).Value <> 0 or Rng3("C" & i).Value <> 0 Then CopyToRange = Range("Sheet1!A2")
Next i
alvast bedankt!
Het volgende is er aan de hand:
Ik heb een sheet met 800 regels. met een stuk of 12 kolommen vol met data.
de eerste drie kolommen zijn van belang deze kolommen moeten gecontroleerd worden of ze "(ongelijk) <> 0" zijn. Als een van de kolommen dus een waarde heeft anders dan 0 dan moet de gehele regel naar sheet2 gekopieerd worden. Ik heb het geprobeerd met de advanced filter. Maar dit gaat niet omdat je maar maximaal twee kolommen kan filteren.
Dus ben ik in vba aan de slag gegaan.
Dus iets van
For i = 7 To 772 'bekijk de tabel
If Range("A" & i).Value <> 0 or Range("B" & i).Value <> 0 or Range("C" & i).Value <> 0 Then CopyToRange = Range("Sheet1!A2")
Next i
kan iemand mij helpen met de juiste "If"
het betreft de volgende kolommen A7 tot A772, B7 tot B772 en C7 tot C772
is het verstandiger om te checken op bijvoorbeeld A7 B7 C7 te controleren of deze <>0 is dan de gehele regel te kopieren naar sheet2 of kan ik beter eerst kolom A7 tot A772 controleren op <>0 en dan kolom b en c? en daarna kopieren.
m'n gevoel zegt de eerste optie dus per regel te kijken en dan gelijk te kopieren.
maar mijn code mag ik niet gebruik maken van Range.
Moet ik eerst bijvoorbeeld:
m'n range definieren als in: dim rng1 as range , dim rng2 as range , etc
zodat het er als volgt uit komt te zien
For i = 7 To 772 'bekijk de tabel
If Rng1("A" & i).Value <> 0 or Rng2("B" & i).Value <> 0 or Rng3("C" & i).Value <> 0 Then CopyToRange = Range("Sheet1!A2")
Next i
alvast bedankt!