In VBA wordt vaak de functie DLookup gebruikt. Deze haalt snel de waarde van een veld op uit een tabel op basis van een gegeven criterium. Allen Browne, een bekende Australische Access guru en MVP, heeft een eigen versie van DLookup gemaakt omdat hij ontevreden was over de performance en mogelijkheden van de standaard functie. De nadelen van DLookup:
  • hij haalt alleen de 1e waarde op die hij tegenkomt, er is geen sortering mogelijk waardoor het resultaat onvoorspelbaar kan zijn
  • de performance is slecht
  • de functie ruimt zijn aangeroepen objecten niet op
  • hij gaat slecht om met zero-length strings
De functie ELookup die hij gemaakt heeft zorgt ervoor dat deze issues niet meer voorkomen
  • Je kan een sortering meegeven
  • hij ruimt zijn aangeroepen objecten netjes op
  • de performance is ongeveer 2 keer zo snel
  • hij ziet het verschil tussen een NULL value en een zero-length string
Als ik een nieuwe Access database bouw is dit 1 van de eerste modules die ik toevoeg. Nieuwsgierig? Lees verder op de site van Allen Browne.