Hallo,
Ik zit met het volgende probleem ( zie bijlage voor verduidelijking )
Via een reeks van stappen en handelingen zou ik op het eind dmv een macro uit moeten komen op dit tabblad en wel op locatie G92 (1VC13A3 is gebruikte locatie eerder in het traject van handelingen)
Echter zoals je ziet op locatie E146 is hetzelfde SAP en BATCH nummer te vinden. ( Dit is mogelijk door beperkt aantal op 1 locatie )
De macro bij mij zoekt standaard van onderaf aan en zet de cursor dan G146 ipv G92 om het aantal aan te kunnen passen.
Waarom gaat het fout: Bij mijn macro zoekt hij eerst op locatie welke in mijn geval 1VC13A3 moet zijn( zie i7) , die vind hij dan op D92 dit is OK, daarna moet de batch erbij worden gezocht (zie (i8) en die vind hij dan als eerste op locatie F146. De eerste voorwaarde wordt dus niet vastgehouden maar de 2e wordt leading.
Dit gaat dus fout als de locatie die gezocht moet worden 1VC13A3 moet zijn.
Mijn vraag: Weet iemand hoe ik mijn macro zo moet maken dat de voorwaarde locatie ( D92 ) én BATCH (F92) voldoen zodat de cursur op G92 geplaatst wordt ipv wat nu het geval is dat de cursur op G146 terecht komt.
OFWEL:
Moet ik afboeken op locatie 1VC13A3 met BATCH 9195 moet de macro én qua locatie én qua batch voldoen en op G92 komen om af te boeken
Moet ik afboeken op locatie 1VC13E3 met BATCH 9195 moet de macro én qua locatie én qua batch voldoen en op G146 komen om af te boeken
Ik hoop dat iemand mij kan helpen met een juiste macro want ik heb helaas al wat misboekingen gedaan omdat ik niet in de gaten had dat ik op de verkeerde locatie zat.
Alvast hartelijk dank voor jullie hulp en zie de juiste macro dolgraag tegemoed.
mvg,
Frank
Met dank aan Cobbe, Hieronder de macro zoals deze zijn werk doet tot heden.
Ik weet dat deze macro niet doet wat ik in mijn vraag wel hoop te krijgen.
Z zoekt de locatie, deze wordt gevonden en cursor komt op locatie te staan tijdens de macro uitvoering, omdat op de bewuste locatie ook andere batches liggen moet de juiste batch erbij gezocht worden. Als de bewuste batch elders in dit tabblad ( in dit geval op F146 ) ook ligt gaat het dus fout.
Daarna doet Y zijn deel van de macro. Zoals je ziet zal de Z zoekactie bij mij dus verloren gaan daar het 2 separate zoekacties zijn.
Op deze manier komt dus de batch in beeld die onderaan staat terwijl de locatie en batch, volgens eerder ingegeven gegevens buiten de macro om, op locatie G92 uit moet komen.
Ik hoop dus dat iemand mij een macro kan toesturen die wel voldoet aan EN Locatie EN Batch zodat de cursor ook op deze positie komt. G92
'locatie zoeken en cursur hierzetten
For z = 10 To 150
If ActiveSheet.Cells(7, 9).Value = ActiveSheet.Cells(z, 4).Value Then
ActiveSheet.Cells(z, 7).Select
End If
Next z
'batch zoeken en cursur hierzetten
For y = 10 To 150
If ActiveSheet.Cells(8, 9).Value = ActiveSheet.Cells(y, 6).Value Then
ActiveSheet.Cells(y, 7).Select
End If
Next y
Volgens mij moet het dus iets worden in de trend van:
For z = 10 To 150
If ActiveSheet.Cells(7, 9).Value = ActiveSheet.Cells(z, 4).Value & ActiveSheet.Cells(8, 9).Value = ActiveSheet.Cells(z, 6).Value Then
ActiveSheet.Cells(z, 7).Select
End If
Next z
maar dat accepteerd VBA niet en ik weet dus niet hoe ik deze regel wel werkend krijg.
Om dit hele verhaal kort uit te leggen getal in i7 moet gevonden worden in kolom d en daarbij moet het getal in i8 gevonden worden om bij deze 2 ja's uit te komen op kolom g in dezelfde rij.
Nu staat er 1VC13A3 in cel i7 dan moet de macro uitkomen in cel G92 met batch 9195
Staat er 1VC13E3 in cel i7 moet de macro uitkomen in cel G146 met batch 9195
Ik zit met het volgende probleem ( zie bijlage voor verduidelijking )
Via een reeks van stappen en handelingen zou ik op het eind dmv een macro uit moeten komen op dit tabblad en wel op locatie G92 (1VC13A3 is gebruikte locatie eerder in het traject van handelingen)
Echter zoals je ziet op locatie E146 is hetzelfde SAP en BATCH nummer te vinden. ( Dit is mogelijk door beperkt aantal op 1 locatie )
De macro bij mij zoekt standaard van onderaf aan en zet de cursor dan G146 ipv G92 om het aantal aan te kunnen passen.
Waarom gaat het fout: Bij mijn macro zoekt hij eerst op locatie welke in mijn geval 1VC13A3 moet zijn( zie i7) , die vind hij dan op D92 dit is OK, daarna moet de batch erbij worden gezocht (zie (i8) en die vind hij dan als eerste op locatie F146. De eerste voorwaarde wordt dus niet vastgehouden maar de 2e wordt leading.
Dit gaat dus fout als de locatie die gezocht moet worden 1VC13A3 moet zijn.
Mijn vraag: Weet iemand hoe ik mijn macro zo moet maken dat de voorwaarde locatie ( D92 ) én BATCH (F92) voldoen zodat de cursur op G92 geplaatst wordt ipv wat nu het geval is dat de cursur op G146 terecht komt.
OFWEL:
Moet ik afboeken op locatie 1VC13A3 met BATCH 9195 moet de macro én qua locatie én qua batch voldoen en op G92 komen om af te boeken
Moet ik afboeken op locatie 1VC13E3 met BATCH 9195 moet de macro én qua locatie én qua batch voldoen en op G146 komen om af te boeken
Ik hoop dat iemand mij kan helpen met een juiste macro want ik heb helaas al wat misboekingen gedaan omdat ik niet in de gaten had dat ik op de verkeerde locatie zat.
Alvast hartelijk dank voor jullie hulp en zie de juiste macro dolgraag tegemoed.
mvg,
Frank
Met dank aan Cobbe, Hieronder de macro zoals deze zijn werk doet tot heden.
Ik weet dat deze macro niet doet wat ik in mijn vraag wel hoop te krijgen.
Z zoekt de locatie, deze wordt gevonden en cursor komt op locatie te staan tijdens de macro uitvoering, omdat op de bewuste locatie ook andere batches liggen moet de juiste batch erbij gezocht worden. Als de bewuste batch elders in dit tabblad ( in dit geval op F146 ) ook ligt gaat het dus fout.
Daarna doet Y zijn deel van de macro. Zoals je ziet zal de Z zoekactie bij mij dus verloren gaan daar het 2 separate zoekacties zijn.
Op deze manier komt dus de batch in beeld die onderaan staat terwijl de locatie en batch, volgens eerder ingegeven gegevens buiten de macro om, op locatie G92 uit moet komen.
Ik hoop dus dat iemand mij een macro kan toesturen die wel voldoet aan EN Locatie EN Batch zodat de cursor ook op deze positie komt. G92
'locatie zoeken en cursur hierzetten
For z = 10 To 150
If ActiveSheet.Cells(7, 9).Value = ActiveSheet.Cells(z, 4).Value Then
ActiveSheet.Cells(z, 7).Select
End If
Next z
'batch zoeken en cursur hierzetten
For y = 10 To 150
If ActiveSheet.Cells(8, 9).Value = ActiveSheet.Cells(y, 6).Value Then
ActiveSheet.Cells(y, 7).Select
End If
Next y
Volgens mij moet het dus iets worden in de trend van:
For z = 10 To 150
If ActiveSheet.Cells(7, 9).Value = ActiveSheet.Cells(z, 4).Value & ActiveSheet.Cells(8, 9).Value = ActiveSheet.Cells(z, 6).Value Then
ActiveSheet.Cells(z, 7).Select
End If
Next z
maar dat accepteerd VBA niet en ik weet dus niet hoe ik deze regel wel werkend krijg.
Om dit hele verhaal kort uit te leggen getal in i7 moet gevonden worden in kolom d en daarbij moet het getal in i8 gevonden worden om bij deze 2 ja's uit te komen op kolom g in dezelfde rij.
Nu staat er 1VC13A3 in cel i7 dan moet de macro uitkomen in cel G92 met batch 9195
Staat er 1VC13E3 in cel i7 moet de macro uitkomen in cel G146 met batch 9195
Bijlagen
Laatst bewerkt: