End xlup zoeken van 1e 1

Status
Niet open voor verdere reacties.

Oude leerling

Gebruiker
Lid geworden
30 aug 2010
Berichten
566
Is het mogelijk om met onderstaande code ook de eerste 1 te vinden
Ik heb dus een kolom met getallen en wil de eerste 1 vinden en dan 5 posities naar links

Range("I50").End(xlUp).Offset(-1, -5).Activate
Jaap
 
Code:
Sub voorbeeld()
 With ActiveSheet
  On Error Resume Next
   Application.Goto Cells(Cells(WorksheetFunction.Match(1, Range("I:I"), 0), 1).Row, 4)
 End With
End Sub
 
Perfect dat werkt goed.

Als hij nu vanuit die positie een cel omhoog moet wat moet er dan gebeuren?
Ik heb alle waarden denk ik al uitgeprobeerd maar het lukt niet
 
@pasan

Er wordt in de code niet verwezen naar 'activesheet'; waarom dan 'With Activesheet ' ?

@OL

Vertel svp:
- de beginsituatie
- de gewenste eindsituatie
- en wat de bedoeling (evt. vervolg) van die 'eind'situatie is.

bijv.

Code:
sn=[I1:I50]
for j=ubound(sn) to 1 step -1
  if sn(j,1)=1 then ...
next
 
Laatst bewerkt:
Code:
Range("I:I"), 0), 1).Row [COLOR="#FF0000"]- 1[/COLOR], 4)

"activesheet" ....... Ik verwachte eigenlijk nog een vervolg vraag als ik eerlijk ben:d
of
Code:
Sub voorbeeld()
 With Sheets("Blad1")
  On Error Resume Next
   Application.Goto .Cells(.Cells(WorksheetFunction.Match(1, .Range("I:I"), 0), 1).Row - 1, 4)
 End With
End Sub
 
Laatst bewerkt:
Pasan ,

Ik heb jou code toegepast en het werkt
Ik moet hem echter gebruiken om een bepaald gebied te kopiëren met 2 variabele

B11:B13
Range("B" & (Range("J4").Value * 2 + 7), Application.Goto Cells(Cells(WorksheetFunction.Match(1, Range("G:G"), 0), 1)).Row -1, 2).Copy

Zou jij eens willen kijken wat de code wel moet zijn want wat ik gemaakt werkt niet

JaapBekijk bijlage Test gebied met 2 variabele copieren.xlsm
 
Laatst bewerkt:
ipv #2

Code:
Sub M_snb()
   Application.Goto Cells([max((I1:I1000=1)*row(1:1000))], 4)
End Sub
 
Probeer eerst eens uit te leggen wat de criteria zijn
 
Snb,

Ja dat werkt ook goed.

Wat nu als ik niet de eerste "1" maar de eerste "0" van onderaf wil hebben terwijl er "1"'s overgeslagen moete worden.
Ik doorgrond de code niet , wat moet ik dan wijzigen
 

Bijlagen

Pasan ,

Ik wil een variabel gebied in kolom "B' kopiëren en dan horizontaal plakken in "J10"

De eerste variabele in kolom "B" word gedefinieerd door , Range("B" & (Range("J4").Value * 2 + 7) , met als uitkomst "B11"
"J4" , in dit geval 2 , kan ook een ander getal zijn.

De tweede variabele in kolom "B" word gedefinieerd door , Application.Goto Cells(Cells(WorksheetFunction.Match(1, Range("G:G"), 0), 1)).Row -1, 2).
De uitkomst hiervan is "B13" .

Met deze 2 code's wil ik een range in kolom "B" vastleggen en kopiëren.

Zie hieronder.

Range("B" & (Range("J4").Value * 2 + 7), Application.Goto Cells(Cells(WorksheetFunction.Match(1, Range("G:G"), 0), 1)).Row -1, 2).Copy

Dit werkt echter niet. Weet jij een oplossing??
 
Laatst bewerkt:
of ik jou logica nu snap of niet maar deze werkt in jou opzet
Code:
Range("B" & (Range("J4").Value * 2 + 7), "B" & (WorksheetFunction.Match(1, Range("G:G"), 0)) - 1).Copy
 
Pasan,
Het zal wel eraan gelegen hebben dat ik die gehele code toepaste.
Application.Goto Cells(Cells dit gedeelte was dus overbodig.
Probleem opgelost
Dank je wel voor de hulp
Jaap
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan