U kunt expressies gebruiken voor een groot aantal verschillende taken in Microsoft Access, zoals het uitvoeren van wiskundige berekeningen, het combineren of extraheren van tekst of het valideren van gegevens. Dit artikel bevat overzichtsinformatie over expressies: wanneer u ze kunt gebruiken, uit welke onderdelen ze bestaan en hoe ze kunnen worden vergeleken met Microsoft Excel-formules.
In dit artikel:
- Overzicht van expressies
- Manieren waarop u expressies kunt gebruiken
- Voorbeelden van expressies
- Onderdelen van expressies
- Vergelijking van Access-expressies en Excel-formules
Overzicht van expressies
U kunt het op deze manier zien: wanneer u wilt dat Access iets doet, moet u de desbetreffende taal spreken. U geeft bijvoorbeeld de volgende opdracht in Access: 'kijk naar het veld Geboortedatum in de tabel Klanten en vertel me in welk jaar de klant is geboren'. U kunt deze expressie schrijven als:
DatePart("yyyy",[Customers]![BirthDate])
Deze expressie bestaat uit de functie DatePart en twee argumentwaarden: "yyyy" en [Customers]![BirthDate].
We bekijken deze expressie in meer detail.
1 DatePart is een functie waarmee een datum wordt bekeken en een bepaald gedeelte hiervan als resultaat wordt gegeven. In dit geval worden de eerste twee argumenten gebruikt.
2 Met het intervalargument wordt aangegeven welk deel van de datum moet worden geretourneerd. In dit geval "yyyy" wordt aangegeven dat alleen het jaargedeelte van de datum moet worden geretourneerd.
3 Het datumargument geeft aan waar er moet worden gezocht naar de datumwaarde. In dit geval wordt aangegeven datCustomers]![BirthDate] er naar de datum moet worden gezocht in het veld Geboortedatum van de tabel Klanten.
Manieren waarop u expressies kunt gebruiken
U kunt expressies op volgende manieren gebruiken:
- Waarden bereken die niet direct in de gegevens beschikbaar zijn. U kunt waarden berekenen in velden in tabellen en query's. Daarnaast kunt u waarden berekenen in besturingselementen in formulieren en rapporten.
- Een standaardwaarde definiëren voor een tabelveld of een besturingselement in een formulier of rapport. Deze standaardwaarden worden weergegeven wanneer u een tabel, formulier of rapport opent.
- Een validatieregel maken om te bepalen welke waarden gebruikers kunnen invoeren in een veld of besturingselement.
- Querycriteria definiëren om de resultaten te beperken tot een gewenste subset.
Waarden berekenen
Een van de meest voorkomende manieren waarop expressies worden gebruikt in Access is het berekenen van waarden die zelf niet in de gegevens staan. Een kolom in een tabel of een query, die het resultaat is van zo’n berekening, heet een berekend veld. U kunt een berekend veld maken dat twee of meer tabelvelden combineert. In veel tabellen staan bijvoorbeeld voor- en achternamen in verschillende velden. Als u de voor- en achternamen wilt combineren en in een veld wilt weergeven, kunt u een berekend veld maken in de tabel of in een query:
[FirstName] & " " & [LastName].
In dit geval combineren de ampersands (&) de waarde in het FirstName veld, een spatie (tussen aanhalingstekens) en de waarde in het LastName veld.
Een standaardwaarde definiëren
U kunt een expressie in Access ook gebruiken om een standaardwaarde op te geven voor een veld in een tabel of voor een besturingselement. Als u bijvoorbeeld de standaardwaarde voor een datumveld wilt instellen op de huidige datum, typt u het volgende in het eigenschappenvak Standaardwaarde voor dat veld:
Date()
Een validatieregel maken
Daarnaast kunt u met een expressie een validatieregel instellen. U kunt een validatieregel bijvoorbeeld gebruiken in een besturingselement of tabelveld om in te stellen dat de ingevoerde datum de huidige datum moet zijn of na de huidige datum moet vallen. In dit geval stelt u de waarde in het eigenschappenvak Validatieregel in op:
>= Date()
Querycriteria definiëren
Ten slotte kunt u met een expressie criteria instellen voor een query. Stel dat u de verkopen wilt weergeven van producten die zijn verzonden in een bepaalde periode. U kunt criteria invoeren om een datumbereik te definiëren, waarna alleen de rijen worden geretourneerd die overeenkomen met de criteria. De expressie kan er bijvoorbeeld als volgt uitzien:
Between #1/1/2017# And #12/31/2017#
Wanneer u criteria toevoegt aan de query en de query vervolgens uitvoert, worden alleen de waarden geretourneerd die overeenkomen met de opgegeven datums.
Voorbeelden van expressies
In de volgende tabel wordt een aantal voorbeelden van Access-expressies beschreven en wordt aangegeven hoe deze doorgaans worden gebruikt:
| Expressie | Doel |
|---|---|
=[RequiredDate]-[ShippedDate] |
Hiermee berekent u het verschil tussen de datumwaarden in twee tekstvakbesturingselementen (met de namen Vervaldatum en Verzenddatum) van een rapport. |
Date() |
Hiermee stelt u de standaardwaarde voor een Datum/tijd-tabelveld in op de huidige datum. |
Between #1/1/2017# And #12/31/2017# |
Hiermee geeft u criteria voor een Datum/tijd-veld in een query op. |
=[Orders Subform].Form!OrderSubtotal |
Hiermee wordt de waarde geretourneerd van het besturingselement Ordersubtotaal in het subformulier Orders van het formulier Orders. |
>0 |
Hiermee stelt u een validatieregel in voor een numeriek veld in een tabel. Gebruikers moeten een grotere waarde dan nul invoeren. |
Bepaalde expressies beginnen met de operator gelijkteken (=), andere expressies niet. Wanneer u een waarde wilt berekenen voor een besturingselement in een formulier of rapport, gebruikt u de operator aan het = begin van de expressie. In andere gevallen, bijvoorbeeld wanneer u een expressie typt in een query of in de eigenschap DefaultValue of Validatieregel van een veld of besturingselement, gebruikt u de = operator alleen als u de expressie toevoegt aan een tekstveld in een tabel. In bepaalde gevallen, bijvoorbeeld wanneer u expressies toevoegt aan query's, wordt de = operator automatisch verwijderd.
Onderdelen van expressies
Een expressie bestaat uit een aantal mogelijke onderdelen, die u afzonderlijk of gecombineerd kunt gebruiken om een resultaat te produceren. Deze onderdelen zijn:
- Id’s De namen van tabelvelden of besturingselementen in formulieren of rapporten, of de eigenschappen van die velden of besturingselementen.
-
Operatoren Bijvoorbeeld de
+(plus) of-(minteken). - Functies Bijvoorbeeld SUM of AVG.
- Constanten Waarden die niet veranderen, zoals tekstreeksen of getallen die niet worden berekend door een expressie.
- Waarden Tekenreeksen zoals "Voer een getal in tussen 1 en 10" of getallen zoals 1.254, waarmee bewerkingen worden uitgevoerd.
In de volgende gedeelten worden deze onderdelen uitgebreider beschreven.
Id's
Een id is de naam van een veld, eigenschap of besturingselement. U gebruikt een id in een expressie om naar de waarde te verwijzen die is gekoppeld aan een veld, eigenschap of besturingselement. Kijk bijvoorbeeld eens naar de expressie =[RequiredDate]-[ShippedDate]. Met deze expressie wordt de waarde van het veld of besturingselement ShippedDate afgetrokken van de waarde van het veld of besturingselement RequiredDate . In deze expressie fungeren beide RequiredDateShippedDate en als id's.
Operatoren
Access ondersteunt diverse operatoren, waaronder veelgebruikte rekenkundige operatoren, zoals +, -, * (vermenigvuldigen) en / (delen). U kunt ook vergelijkingsoperatoren gebruiken, zoals < (kleiner dan) of > (groter dan), voor het vergelijken van waarden, tekstoperatoren zoals & en + voor het samenvoegen (combineren) van tekst, logische operatoren zoals Not en And voor het bepalen van Waar of Onwaar en andere operatoren die specifiek zijn voor Access.
Functies
Functies zijn ingebouwde procedures die u kunt gebruiken in uw expressies. U kunt functies gebruiken voor een groot aantal bewerkingen, zoals het berekenen van waarden, het bewerken van tekst en datums, en het samenvatten van gegevens. Een veelgebruikte functie is bijvoorbeeld DATUM, waarmee de huidige datum wordt geretourneerd. U kunt de functie DATUM op verschillende manieren gebruiken, bijvoorbeeld in een expressie waarmee de standaardwaarde wordt ingesteld voor een veld in een tabel. In dit voorbeeld wordt de waarde voor het veld standaard ingesteld op de huidige datum wanneer een persoon een nieuwe record toevoegt.
Voor sommige functies zijn argumenten vereist. Een argument is een waarde die dient als invoer voor de functie. Als voor een functie meerdere argumenten vereist zijn, scheidt u de argumenten door een komma. Bekijk de functie DATUM in de volgende voorbeeldexpressie:
=Format(Date(),"mmmm d, yyyy")
In dit voorbeeld worden twee argumenten gebruikt:
- Het eerste argument is de
Date()functie die de huidige datum retourneert. Als er geen argumenten zijn, moet u toch de functiehaakjes toevoegen. - Het tweede argument, dat van het eerste argument
"mmmm d, yyyy"is gescheiden door een komma, verwijst naar een tekenreeks om de functie INDELING te instrueren hoe de geretourneerde datumwaarde moet worden opgemaakt. De tekenreeks moet tussen aanhalingstekens staan.
Deze expressie laat ook zien dat u een geretourneerde waarde van de ene functie vaak kunt nesten als argument voor een andere functie. Fungeert in dit geval Date() als een argument.
Constanten
Een constante is een item waarvan de waarde niet wijzigt terwijl Access wordt uitgevoerd. De True, False, en constanten Null worden vaak gebruikt in expressies.
Waarden
U kunt letterlijke waarden in uw expressies gebruiken, zoals het getal 1.254 of de tekenreeks “Voer een getal in tussen 1 en 10”. U kunt ook numerieke waarden gebruiken, zoals een reeks cijfers, indien gewenst met een teken en een decimale komma.
Wanneer u tekenreekswaarden gebruikt, plaats u deze tussen aanhalingstekens om er zeker van te zijn dat deze correct worden geïnterpreteerd. In sommige gevallen worden de aanhalingstekens automatisch toegevoegd. De aanhalingstekens worden bijvoorbeeld automatisch toegevoegd wanneer u tekst typt in een expressie voor een validatieregel of voor querycriteria.
Als u datum-/tijdwaarden wilt gebruiken, plaatst u de waarden tussen hekjes (#). Bijvoorbeeld, #3-7-17#, #7-Mar-17#en #Mar-7-2017# zijn allemaal geldige datum-/tijdwaarden. Wanneer in Access een geldige datum-/tijdwaarde wordt aangetroffen die tussen #-tekens is geplaatst, wordt de waarde automatisch behandeld als het gegevenstype Datum/tijd.
Naar boven
Vergelijking van Access-expressies en Excel-formules
Access-expressies lijken op Excel-formules, omdat voor beide soortgelijke elementen worden gebruikt om een resultaat te verkrijgen. Excel-formules en Access-expressies bevatten een of meer van de volgende items:
-
Id's In Excel zijn id's de namen van afzonderlijke cellen of celbereiken in een werkmap, zoals A1, B3:C6 of Blad2! C32. In Access zijn id's de namen van tabelvelden (zoals
[Contacts]![First Name]), besturingselementen in formulieren of rapporten (zoalsForms![Task List]![Description]), of de eigenschappen van die velden of besturingselementen (zoalsForms![Task List]![Description].ColumnWidth). -
Operatoren In Access en Excel worden operatoren gebruikt om waarden te vergelijken of eenvoudige berekeningen uit te voeren op de gegevens. Voorbeelden zijn
+(plus) of-(min). - Functies In Access en Excel worden functies en argumenten gebruikt om taken uit te voeren die u niet kunt uitvoeren met alleen operatoren. U kunt bijvoorbeeld het gemiddelde van de waarden in een veld berekenen of het resultaat van een berekening converteren naar een valutanotatie. Voorbeelden van functies zijn SOM en STDEV. Argumenten zijn waarden die informatie aan functies verstrekken. Access en Excel hebben beide veel functies waaruit u kunt kiezen, maar de namen van vergelijkbare functies in de programma's verschillen soms. De functie GEMIDDELDE in Excel komt bijvoorbeeld overeen met de functie AVG in Access.
- Constanten In Access en Excel zijn constanten waarden die niet veranderen, zoals getallen die niet worden berekend met een expressie.
- Waarden In Access en Excel worden waarden op een vergelijkbare manier gebruikt.
In Access-expressies worden operatoren en constanten gebruikt die vergelijkbaar zijn met die in Excel-formules, maar voor Access-expressies worden andere id's en functies gebruikt. Terwijl Excel-formules over het algemeen alleen in werkbladcellen worden gebruikt, worden Access-expressies op veel plaatsen in Access gebruikt voor allerlei uiteenlopende taken, zoals:
- Berekende besturingselementen maken in formulieren en rapporten
- Berekende velden maken in tabellen en query's
- Fungeren als criteria in query's
- Gegevens valideren die worden ingevoerd in een veld of in een besturingselement van een formulier
- Gegevens in rapporten groeperen
U kunt een Access-expressie of een Excel-formule gebruiken om numerieke waarden of waarden voor datum/tijd te berekenen met rekenkundige operatoren. U kunt bijvoorbeeld de Excel-formule =C2*(1-D2) of de Access-expressie = [Unit Price]*(1-[Discount])gebruiken om een kortingsprijs te berekenen voor een klant.
U kunt ook een Access-expressie of een Excel-formule gebruiken om tekenreeksen te combineren, te splitsen of op een andere manier te bewerken via tekenreeksoperatoren. Als u bijvoorbeeld een voor- en achternaam in één tekenreeks wilt combineren, kunt u de Excel-formule =D3 & " " & D4 of de Access-expressie = [First Name] & " " & [Last Name]gebruiken.
Naar boven
De opbouwfunctie voor expressies gebruikenEen expressie makenSyntaxis voor expressiesVoorbeelden van expressies