Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Excel 2007] vert.zoeken duurt te lang -> VBA

Pagina: 1
Acties:

  • TDB
  • Registratie: Oktober 2000
  • Laatst online: 22-11 09:31
In Excel 2007 twee tabbladen met gegevens van "deze maand" en "vorige maand" met dossiernummers (ruim 200.000) inclusief statuscode. In tabel "vorige maand" wil ik kijken per dossiernummer of a) het dossier nog bestaat in "nieuwe maand" en indien het dossier bestaat b) wat de status is in "nieuwe maand".
Middels som.als (zijn unieke dossiernummers) en vert.zoeken kan ik uiteraard eea bij elkaar zoeken, maar gezien het feit dat het ruim 200.000 zoekopdrachten zijn duurt dit proces te lang.

VBA denk ik dan. Twee mogelijkheden (misschien wel meer):
optie 1
"vorige maand" - 1e rij - zoek in kolom 4 dossiernummer - ga naar tabblad "nieuwe maand" - zoek rijnummer in kolom 4 met dezelfde dossiernummer - onthoud welke rijnummer - zoek status dossier in rijnummer & kolom 8 - kopieer dat getal achteraan op 1e rij tabblad "vorige maand" - ga 1 rij omlaag en doe alles opnieuw

optie 2
som.als vertalen naar VBA

Mij lijkt zelf optie 1 sneller dan optie 2 maar voordat ik eea wil gaan programmeren wil ik dat uiteraard zeker weten. Kan iemand mij op weg helpen?

PSN: TDBtje


Verwijderd

Wat versta jij onder 'te lang'? Bovendien kun je beide vragen (óf het dossiernummer nog bestaat en zo ja wat de huidige status is) in één VERT.ZOEKEN-formule vangen. Als je als resultaat "#N/B" terugkrijgt, bestaat het dossiernummer immers niet meer; in alle andere gevallen wordt de huidige status teruggegeven.

Bovendien snap ik niet zo goed waarom je SOM.ALS gebruikt, als alle dossiernummers uniek zijn. SOM.ALS gebruik je alleen bij optellen van getallen, als je meerdere records in je zoekbereik hebt met dezelfde waarde als in je zoekcriterium is opgegeven.

Verwijderd

En anders in Access plempen en een simpele query uitvoeren.

  • TDB
  • Registratie: Oktober 2000
  • Laatst online: 22-11 09:31
Verwijderd schreef op zaterdag 19 maart 2011 @ 17:13:
Wat versta jij onder 'te lang'? Bovendien kun je beide vragen (óf het dossiernummer nog bestaat en zo ja wat de huidige status is) in één VERT.ZOEKEN-formule vangen. Als je als resultaat "#N/B" terugkrijgt, bestaat het dossiernummer immers niet meer; in alle andere gevallen wordt de huidige status teruggegeven.

Bovendien snap ik niet zo goed waarom je SOM.ALS gebruikt, als alle dossiernummers uniek zijn. SOM.ALS gebruik je alleen bij optellen van getallen, als je meerdere records in je zoekbereik hebt met dezelfde waarde als in je zoekcriterium is opgegeven.
Ik gebruik som.als omdat de dossiernummers niet op volgorde staan. Iets wat natuurlijk wel van belang is vij vert.zoeken.

PSN: TDBtje


  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

Poeh volgens mij moet je je gaan verdiepen in databases, excel is leuk voor kleine dingetjes.

maar met deze hoeveelheden, is een querie meestal handiger. of komt het uit een database en probeer je het middels excel te behapstukken ?

Iperf


Verwijderd

TDB schreef op zondag 20 maart 2011 @ 20:35:
[...]


Ik gebruik som.als omdat de dossiernummers niet op volgorde staan. Iets wat natuurlijk wel van belang is vij vert.zoeken.
Dat snap ik niet. Je zoeklijst bevat toch alleen unieke dossiernummers? Vert.zoeken geeft dan steeds het eerste record terug, en dat is in dit geval ook voldoende omdat dat - als het goed is - ook het enige record is.

Som.Als gebruik je als je in je referentielijst meerdere records hebt met dezelfde zoeksleutel, en je de numerieke resultaten uit een ander veld van die records bij elkaar wilt optellen. Heel iets anders dus dan waar Vert.Zoeken voor in het leven is geroepen.
Pagina: 1