• 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.

Unieke reducerende validatielijst

Status
Niet open voor verdere reacties.

camelbe

Gebruiker
Lid geworden
6 dec 2015
Berichten
9
Beste mensen,

Graag uw hulp voor volgende excelfile aub. Bij klanten kunnen een aantal data ingepland worden, echter per klant is slechts 1 datum mogelijk en wanneer een datum ingepland is kan deze niet meer bij een andere klant ingevuld worden.

Alvast bedankt.

Bekijk bijlage Testfile lijst.xlsx
 
Zie bijlage.

De oplossing is opgezet met dynamische bereiken; de lijst kan worden uitgebreid t/m regel 1000.
Ik heb de lege cel in H2 verwijderd; de netto beschikbare datums staan in kolom I.
Als je meer datums toevoegt in kolom H; hoef je alleen maar de formules in kolom I naar beneden te kopiëren.

De oplossing maakt gebruik van 3 gedefinieerde namen (tab Formules - Namen beheren):
BrutoLijst: =Sheet1!$H$2:INDEX(Sheet1!$H$2:$H$1000;AANTAL(Sheet1!$H$2:$H$1000))
NettoLijst: =Sheet1!$I$2:INDEX(Sheet1!$I$2:$I$1000;AANTAL(Sheet1!$I$2:$I$1000))
ValidatieLijst: =KLEINSTE(ALS(ISFOUT(VERGELIJKEN(BrutoLijst;Sheet1!$D:$D;0));BrutoLijst);RIJ(INDIRECT("1:"&SOM(--ISFOUT(VERGELIJKEN(BrutoLijst;Sheet1!$D:$D;0))))))

BrutoLijst en Nettolijst zijn de ingevulde velden in H2:H1000 en I2:I1000.
ValidatieLijst is gelijk aan de NettoLijst, d.w.z. de datums in BrutoLijst die niet voorkomen in kolom D; maar ValidatieLijst kon ik niet direct gebruiken in de gegevensvalidatie.

Formule in I2 en gekopieerd naar beneden: =ALS.FOUT(INDEX(ValidatieLijst;RIJEN(I$2:I2));"")

Het aardige van deze oplossing is dat je in de dropdown in kolom D geen lege regels hebt aan het einde van de lijst; de lijst wordt gewoon steeds korter naarmate je meer datums gebruikt hebt.

Je kunt ingevulde datums in kolom D gewoon leegmaken met de Delete-knop en dan zijn ze weer beschikbaar.
 

Bijlagen

Laatst bewerkt:
Beste mensen,

Is het ook mogelijk om in kolom H (lijst beschikbare data of de bruto lijst) ipv "01/01/2016" --> "01/01/2016 | 09:30" te zetten.

Aldus datum met erbij het uur in 1 kolom. Dit omdat er op 1 dag meerder afspraken kunnen plaatsvinden op diverse tijdstippen.

Het mag van mij natuurlijk ook in 2 kolommen maar ik vrees dat dit niet mogelijk is?

Bekijk bijlage Testfile lijst LP.xlsx
Enorm bedankt in ieder geval!
 
Het kan al binnen de oplossing die ik heb voorgedragen: gewoon de nummerformaten in kolom D, H en I aanpassen in dd-mm-jjjj uu:mm.
Dan de lijst in kolom H uitbreiden met tijdstippen.
Dat moeten dan wel vaste tijdstippen zijn (bijv. 9:30 en 13:30); als je met begin- en eindtijden wilt gaan werken dan wordt het allemaal een stuk complexer.
 
Hoi,
Je kan ook in deze richting denken, ik weet, Marcel is hier de formule specialist:):thumb:
Maar ik niet zo, ik denk liever in een andere richting
Als je in mijn vbtje een oplossing ziet wil ik uw vbbestandje wel eventjes aanpassen
Probeer nog eens dezelfde datum in te vullen
 

Bijlagen

... ik weet, Marcel is hier de formule specialist:):thumb:
Maar ik niet zo, ik denk liever in een andere richting...
Kijk, da's nou aardig dat ik hier een reputatie begin te krijgen. :d
En tegelijkertijd ook goed om te realiseren dat de een meer neigt naar een formule-oplossing, en de ander meer naar VBA.
Zo vullen we elkaar aardig aan. De ene keer zal een formule beter zijn, en een andere keer VBA.
 
Hoi,
Ben eventjes aan het spelen geweest
Uw vraag stond nog niet opgelost zodoende
Kan je hier iets mee?
greetz
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan