VBA: vert. zoeken en regels verwijderen?

Status
Niet open voor verdere reacties.

globe

Verenigingslid
Lid geworden
18 mrt 2001
Berichten
3.616
Verticaal zoeken en regels verwijderen mogelijk
Beste VB experts.

Ik heb de volgende situatie bijdehand:

2 excellen, 1 daarvan netjes opgemaakt met als doel naar mijn klanten te kunnen versturen en 1 bestaat uit ruwe data (samengevoegd vanuit 3 andere excellen)
(in dit voorbeeld heb ik de excellen samengevoegd in 2 tabs)

Nu kan ik met vertikaal zoeken de diverse voorraad in laten vullen in mijn excelsheet, geen probleen, de artikelcodes zijn unieke waardes namelijk.
Dit heb ik in mijn sheet gedaan met de diverse voorraden. De voorraden op blad 1 worden uit blad 2 gehaald.

Het probleem wat nu onstaat is wanneer er géén voorraad van een bepaald artikel meer is, dit artikel wel in de lijst blijft staan. Het resultaat wordt dus uiteindelijk een slordige lijst met daarop artikelen die niet meer leverbaar zijn.

Vraag:

Is het mogelijk om verticaal te laten zoeken en dat bij een uitkomst van 0 de complete rij verwijderd wordt?

bedankt alvast!

(oh ja... het moet werken onder excel 2003)
 

Bijlagen

Laatst bewerkt:
Code:
sheets(1).columns(1).find("te verwijderen artikel",,xlvalues, xlwhole).entirerow.delete
 
Hoi SNB,

bedankt voor je reactie maar zoekt bovenstaand script ook vertikaal?
 
OK,

maar wat ik wil een script dat én vertikaal zoekt én regels verwijdert.
Dit script verwijdert alleen toch?
anyway erg bedankt hoor.!
 
find: betekent zoeken
delete: betekent verwijderen
columns(1): betekent dat er alleen in kolom A wordt gezocht; en dat kan niet anders dan vertikaal.
In 1 regel code kun je dus 2 akties uit laten voeren
Heb je de code al geprobeerd ?
 
Laatst bewerkt:
Hoi SNB en Wigi,

wederom bedankt voor de reactie maar de code werkt niet. Ik krijg een compileerfout op 'te verwijderen artikel'-> ongeldig buiten procedure?

Verder denk ik dat ik misschien niet helemaal duidelijk ben geweest ;)

Het script moet én in de tweede tab zoeken naar de voorraad, deze invullen in de eerste tab en indien dan de voorraad 0 is deze regel verwijderen.

Ik heb helaas weinig kennis van VB
 
wederom bedankt voor de reactie maar de code werkt niet. Ik krijg een compileerfout op 'te verwijderen artikel'-> ongeldig buiten procedure?

Jouw procedure heeft geen naam.

Het moet zijn:

Code:
Sub naamvandeprocedure()
   'de code
End Sub

naam is vrij te kiezen, op een aantal logische beperkingen na natuurlijk.

Wigi
 
OK,

al weer wat verder.

Ik heb nu een naam eraan gehangen en kan de macro draaien.

Ik krijg nu een foutmelding:

Fout 91:

ObjectVariabele of blokvariabele with niet goed ingesteld.
 
Code:
Sub verwijder_regels()
  
sheets(1).columns(1).find("te verwijderen artikel",,xlvalues, xlwhole).entirerow.delete

End Sub
 
Dat wil zeggen dat het artikel niet gevonden kan worden.

Nu, feit is dat de VBA codes van Snb heel vaak heel kort zijn, maar dan wel zó kort dat er geen foutafhandeling in zit... Jij zal dus nog het geval moeten ondervangen wanneer er niets gevonden kan worden in die kolom.

Wigi
 
Je moet natuurlijk "te verwijderen artikel" vervangen door de naam van het artikel dat je wil zoeken, want ik vermoed dat er geen enkel artikel in je lijst de naam "te verwijderen artikel" heeft.
 
Laatst bewerkt:
Misschien heb ik het niet goed uitgelegd...


Het script moet in blad 2 naar de voorraad waarde zoeken van een bepaald artikelnummer, zeg maar een soort van vertikaal zoeken. Maar als er geen voorraad is op blad 2 op het desbetreffende artikelnummer moet de regel met het desbetreffende artikelnummer verwijderd worden van blad 1.

Ik wil dus niet zelf artikelen invoeren in het script.
 
Computers zijn geen mensen: je moet wel vertellen waarnaar gezocht moet worden.......
 
haha!

Het script moet naar de waarde 'artikelnummer' zoeken (blad 1 eerste kolom) in blad 2.
Vervolgens moet hij de 3 voorraad waardes van uit blad 2 in blad 1 plakken.
Wanneer de voorraad 0 is moet de rij verwijderd worden.

hoop dat ik nu duidelijk genoeg ben.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan