• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Voorwaardelijk zoeken (uitgebreid)

Status
Niet open voor verdere reacties.

johanx

Gebruiker
Lid geworden
1 aug 2008
Berichten
9
Goedenavond,

Ik probeer een contractvolgsysteem te maken en loop tegen het volgende aan: Ik wil graag automatisch zien welke contracten verlengd zijn. In het bijgevoegde voorbeeld is te zien dat Klant 2 het eerste contract afliep op 28-02-2009. Dit is echter verlengd van 01-03-2009 en vervolgens vanaf 01-08-09. Klant 1 daarentegen is gestopt op 01-03-09 en niet verlengd.

In kolom A wil ik graag aangeven dat een contract wel of niet verlengd is. Ik kom hier met verticaal zoeken niet uit, omdat een klant soms wel 15 keer in het overzicht voorkomt. Weet iemand een passende oplossing? Het totaal gaat over enorm veel data (nu al 5000+ klanten) dus een makkelijk werkbare oplossing (lees: snel) heeft de voorkeur ;)

Alvast enorm bedankt!

Bekijk bijlage VB_Helpmij.xls
 
Zou je met deze wegkomen?

Code:
=ALS(E2<VANDAAG();"Neen";"Ja")

Suc6, Cobbe
 
Nee helaas niet.. Want dit zegt alleen of de datum kleiner is dan vandaag. En ik wil juist dat hij het bestand doorzoekt of er niet een klant met gelijk ID is waarbij de datum verder ligt....

Andere suggesties?
 
Ga naar: invoegen >> naam >> definieren >>
Naam: gebied >> formule: =VERSCHUIVING(Blad1!$B$1;RIJ();0;AANTALARG(Blad1!$B:$B)-1;1)

vervolgens voor cel A2 de formule:
Code:
=ALS(AANTAL.ALS(gebied;B2)>=1;"Ja";ALS(E2<VANDAAG();"Nee";""))
doortrekken naar beneden voor zover als nodig (dubbelklik op het plusje).
 
Door alles in een iets ander jasje te gieten kom ik met deze oplossing.
 

Bijlagen

Goeddenavond allen,

Dat begint er al op te lijken! Echter zit er nog wel een fout in... de volgorde hoeft namelijk niet chronologisch te zijn. Zie in dit geval regel 8, waar neits voorstaat. Regel 7 wel, maar dit is de laatste verlenging...

Zat zelf te denken aan iets in de trant van: het maximum (einddatum) zoeken op basis van het ID en dit vergelijken met het huidige maximum (einddatum).... alleen het hoe is de grote vraag..

Bekijk bijlage VB_Helpmij babo.xls


Papipipo, een andere opmaak is a geen optie (zit nog een groter bestand achter) en B niet wenselijk met 5000 klanten.

Johan
 
Oke, ik had gehoopt dat de volgorde chronologisch zou zijn;)

Dan kan het met volgende matrix formule voor cel A2:
Code:
=ALS(MAX(ALS(B$2:B$9=B2;E$2:E$9))>E2;"ja";ALS(E2<VANDAAG();"Nee";""))
Bevestigen met CTRL-SHIFT-ENTER.
hierna door te trekken naar beneden.

p.s. ipv B$2:B$9 kan je ook zetten: gebied
dan moet je wel de formule van gebied veranderen in:
Code:
=VERSCHUIVING(Blad1!$B$2;0;0;AANTALARG(Blad1!$B:$B)-1;1)
Zo staat het bereik altijd goed.
 
Hoi Bob,

Dank voor het meezoeken naar een oplossing! Echter lijkt hij nu wederom niet te werken, omdat hij niet de maxdatum pakt van een bepaalde klant, maar uberhaupt de max. Zou je anders een voorbeeld kunnen geven in een bestandje?

Ben lastig, maar wil hem graag goed hebben.

Johan
 
Dag Johan,

Filteren op "Klant".
Je kunt dan met de hand Ja of Nee intypen.
Zie Bestand
 

Bijlagen

Hoi Bob,

Dank voor het meezoeken naar een oplossing! Echter lijkt hij nu wederom niet te werken, omdat hij niet de maxdatum pakt van een bepaalde klant, maar uberhaupt de max. Zou je anders een voorbeeld kunnen geven in een bestandje?

Ben lastig, maar wil hem graag goed hebben.

Johan
Hier een voorbeeldje. Probeer maar even uit. Ik lees het morgen wel.
 

Bijlagen

Laatst bewerkt:
Hier nog een voorbeeldje, we horen het wel. Zoals in post #8 reeds gezegd, het bereik kan je met "Verschuiving" dynamisch maken.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan