Overweeg een kruistabelquery te gebruiken als u wilt dat samenvattingsgegevens gemakkelijker te lezen en te begrijpen zijn in Access. Met een kruistabelquery wordt een som, gemiddelde of andere statistische functie berekend, waarna de resultaten in twee waardesets worden gegroepeerd, één omlaag langs het gegevensblad en de andere langs de bovenzijde. Klik op het lint op Maken en klik in de groep Query's op Wizard Query. Dubbelklik in het dialoogvenster Nieuwe query op Wizard Kruistabelquery.
Als de ene set koppen datumwaarden bevat, kunt u met de wizard de records groeperen op standaardintervallen zoals maanden of kwartalen.
In dit artikel
Opmerking: Kruistabelquery's zijn niet beschikbaar in Access-web-apps en worden slechts gedeeltelijk ondersteund in een webdatabase: ze kunnen niet worden gebruikt door webobjecten.
Overzicht
Een kruistabelquery is een soort selectiequery. Wanneer u een kruistabelquery uitvoert, worden de resultaten weergeven in een gegevensblad met een structuur die afwijkt van die van andere soorten gegevensbladen.
De structuur van een kruistabelquery kan ervoor zorgen dat deze beter leesbaar is dan een eenvoudige selectiequery met dezelfde gegevens, zoals u kunt zien in de volgende afbeelding.
1. Met deze selectiequery worden samenvattingsgegevens verticaal gegroepeerd op werknemer en categorie.
2. Een kruistabelquery kan dezelfde gegevens weergeven, maar de gegevens worden horizontaal en verticaal gegroepeerd zodat het gegevensblad compacter is en gemakkelijker te lezen.
Wanneer u een kruistabelquery maakt, geeft u op welke velden rijkoppen bevatten, welk veld kolomkoppen bevat en welk veld de waarden bevat die moeten worden samengevat. U kunt slechts één veld gebruiken per kolomkop en samen te vatten waarden. U kunt zoveel velden als u wilt gebruiken voor de rijkoppen.
U kunt ook een expressie gebruiken om rijkoppen, kolomkoppen of samen te vatten waarden te maken. Zie Statistische SQL-functies voor meer informatie.
1. Eén, twee of drie kolommen aan deze kant bevatten rijkoppen. De namen van de velden die u gebruikt als rijkoppen worden weergegeven in de bovenste rij van deze kolommen.
2. De rijkoppen worden hier weergegeven. Het aantal rijen in het kruistabelgegevensblad kan snel groeien wanneer u meer dan één rijkopveld gebruikt, omdat elke combinatie van rijkoppen wordt weergegeven.
3. De kolommen aan deze zijde bevatten kolomkoppen en samenvattingswaarden. De naam van het kolomkopveld wordt niet weergegeven in het gegevensblad.
4. Hier worden samenvattingswaarden weergegeven.
Methoden voor het maken van een kruistabelquery
De wizard Kruistabelquery gebruiken De wizard Kruistabelquery is meestal de snelste en gemakkelijkste manier om een kruistabelquery te maken. De wizard doet het meeste werk voor u, maar er zijn een paar opties die de wizard niet aanbiedt.
De wizard heeft deze voordelen:
-
Eenvoudig te gebruiken. Als u de wizard wilt gebruiken, hoeft u deze alleen te starten en wat vragen te beantwoorden.
-
U kunt datums automatisch groeperen in intervallen. Als u voor de kolomkoppen een veld gebruikt met datum/tijd-gegevens, helpt de wizard ook om die datums in intervallen onder te brengen, zoals maanden of kwartalen.
Tip: Als u waarden in een datum/tijd-veld wilt gebruiken voor de kolomkoppen, maar u de datums wilt groeperen in intervallen die de wizard niet aanbiedt, zoals fiscaal jaar of tweejaarlijks, moet u deze wizard niet gebruiken om de query te maken. Maak de kruistabelquery in dat geval in de ontwerpweergave en gebruik een expressie om de intervallen te maken.
-
U kunt de wizard als uitgangspunt gebruiken. Gebruik de wizard om de gewenste basiskruistabelquery te maken, waarna u het ontwerp van de query verder uitwerkt in de ontwerpweergave.
Deze mogelijkheden worden echter niet ondersteund door de wizard:
-
Meer dan één tabel of query gebruiken als een recordbron.
-
Een expressie gebruiken om velden te maken.
-
Een parametervraag toevoegen.
-
Een lijst met vaste waarden opgeven die als kolomkoppen moeten worden gebruikt.
In de laatste stap van de wizard kunt u aangeven dat u de query wilt aanpassen in de ontwerpweergave. Dit biedt de mogelijkheid om queryontwerpelementen toe te voegen die de wizard niet ondersteunt, zoals extra recordbronnen.
Werken in de ontwerpweergave In de ontwerpweergave hebt u meer controle over het queryontwerp. Hier hebt u de beschikking over de functies die niet beschikbaar zijn in de wizard.
Maak uw kruistabelquery in de ontwerpweergave om over deze voordelen te beschikken:
-
Meer controle over het proces. De wizard neemt enkele beslissingen voor u.
-
Meer dan één tabel of query gebruiken als een recordbron.
-
Een parameterprompt toevoegen aan de query.
-
Expressies gebruiken als velden in uw query.
-
Een lijst met vaste waarden opgeven die als kolomkoppen moeten worden gebruikt.
-
Oefenen met het ontwerpraster.
Een query schrijven in de SQL-weergave Als u dat liever doet, kunt u een kruistabelquery ook schrijven in de SQL-weergave. Het is dan echter niet mogelijk om parametergegevenstypen op te geven. Als u een parameter wilt gebruiken in uw kruistabelquery, moet u het parametergegevenstype opgeven door de query aan te passen in de ontwerpweergave.
Tip: Het is belangrijk om te onthouden dat u verschillende methoden kunt combineren als u een kruistabelquery gaat maken. U kunt de wizard gebruiken om de basisquery te maken en vervolgens overschakelen naar de ontwerpweergave om het queryontwerp te verfijnen.
Een kruistabelquery maken met de wizard Kruistabelquery
In de wizard Kruistabelquery moet u één tabel of query gebruiken als de gegevensbron voor uw kruistabelquery. Als alle gegevens die u in uw kruistabelquery wilt opnemen niet in één tabel staan, moet u eerst een selectiequery maken om de gewenste gegevens op te halen. Zie de sectie Zie ook voor meer informatie over het maken van een selectiequery.
Voor dit voorbeeld maken we een kruistabelquery aan de hand van de tabel Producten in de voorbeelddatabase Noordenwind. We willen voor alle leveranciers het aantal producten weergeven in elke categorie.
-
Klik op het tabblad Maken in de groep Query's op Wizard Query.
-
Klik in het dialoogvenster Nieuwe query op Wizard Kruistabelquery en klik vervolgens op OK.
De wizard Kruistabelquery wordt gestart.
-
Kies op de eerste pagina van de wizard de tabel of query die u wilt gebruiken om een kruistabelquery te maken. Voor dit voorbeeld selecteert u de tabel Producten en klikt u vervolgens op Volgende.
-
Kies op de volgende pagina het veld dat de waarden bevat die u wilt gebruiken als rijkoppen. U kunt maximaal drie velden selecteren die u wilt gebruiken als bron voor de rijkoppen, maar hoe minder rijkoppen u gebruikt, hoe beter het kruistabelgegevensblad te lezen is. Als u meer dan één veld kiest als basis voor uw rijkoppen, bepaalt de volgorde waarin u de velden selecteert, de standaardvolgorde waarin uw resultaten worden gesorteerd.
Selecteer voor dit voorbeeld Leverancier-id's.Value en klik vervolgens op de knop met het symbool >. U ziet dat de veldnaam aan de linkerkant van het voorbeeld van de query wordt weergegeven, onder aan het dialoogvenster. Klik op Volgende om door te gaan.
-
Kies op de volgende pagina het veld dat de waarden bevat die u wilt gebruiken als kolomkoppen. Over het algemeen kunt u het beste een veld kiezen dat slechts weinig waarden bevat om de resultaten leesbaar te houden. Zo heeft het gebruik van een veld met slechts enkele mogelijke waarden (bijvoorbeeld Geslacht) de voorkeur boven een veld dat veel verschillende waarden bevat (zoals Leeftijd).
Als het veld dat u hebt gekozen voor de kolomkoppen gegevens bevat van het type Datum/tijd, wordt in de wizard een stap toegevoegd waarin u kunt aangeven hoe de datums in intervallen moeten worden gegroepeerd, zoals maanden of kwartalen.
Selecteer voor dit voorbeeld Categorie en u ziet dat de namen van voorbeeldcategorieën aan de bovenkant van het voorbeeld van de query worden weergegeven, onder aan het dialoogvenster. Klik op Volgende om door te gaan.
-
Als u een Datum/tijd-veld kiest voor de kolomkoppen, wordt u op de volgende pagina van de wizard gevraagd welk interval u wilt gebruiken voor het groeperen van de datums. U kunt Jaar, Kwartaal, Maand, Datum of Datum/tijd opgeven. Als u geen Datum/tijd-veld kiest voor de kolomkoppen, wordt deze pagina in de wizard overgeslagen.
-
Kies op de volgende pagina een veld en een functie voor het berekenen van de samenvattingswaarden. Het gegevenstype van het veld dat u selecteert, bepaalt welke functies beschikbaar zijn.
Schakel op dezelfde pagina het selectievakje Ja, rijtotalen opnemen in of uit om de rijtotalen al dan niet op te nemen.
Als u rijtotalen opneemt, krijgt de kruistabelquery een extra rijkop die gebruik maakt van hetzelfde veld en dezelfde functie als de veldwaarde. Er wordt een extra kolom ingevoegd met een totaal van de resterende kolommen. Als u met uw kruistabelquery bijvoorbeeld de gemiddelde leeftijd berekent op locatie en geslacht (met kolomkoppen voor geslacht), wordt in de extra kolom de gemiddelde leeftijd op locatie berekend voor alle geslachten.
Voor dit voorbeeld selecteert u Id in het vak Velden en Aantal in het vak Functies om het aantal producten te tellen op elk snijpunt van leverancier en categorie. Laat het selectievakje Een totaal berekenen voor elke rij ingeschakeld. Er wordt een kolom gemaakt in Access waarmee het aantal producten van elke leverancier wordt opgeteld. Klik op Volgende om door te gaan.
-
Typ op de laatste pagina van de wizard een naam voor uw query en geef vervolgens aan of u de resultaten wilt bekijken of het ontwerp van de query wilt aanpassen.
U kunt de functie wijzigen die wordt gebruikt om rijtotalen te produceren, door de kruistabelquery te bewerken in de onderwerpweergave.
-
Als u in dit voorbeeld de tabel Producten uit de voorbeelddatabase Noordenwind hebt gebruikt, is het resultaat van de kruistabelquery een lijst met leveranciersnamen als rijen, de namen van productcategorieën als kolommen en op elk snijpunt het aantal producten.
Als u de ontwerpweergave gebruikt om een kruistabelquery te maken, kunt u zo veel recordbronnen (tabellen en query's) gebruiken als u wilt. U kunt het ontwerp echter eenvoudig houden door eerst een selectiequery te maken die alle gewenste gegevens ophaalt en vervolgens die query op te geven als de enige recordbron voor uw kruistabelquery. Zie de sectie Zie ook voor meer informatie over het maken van een selectiequery.
Wanneer u een kruistabelquery maakt in de ontwerpweergave, gebruikt u de rijen Totaal en Kruistabel in het ontwerpraster om aan te geven welke veldwaarden kolomkoppen worden en voor welke veldwaarden een totaal, gemiddelde, aantal of iets anders moet worden berekend.
1. De instellingen in deze rijen bepalen of het veld een rijkop, kolomkop of samenvattingswaarde is.
2. Met deze instelling worden de veldwaarden weergegeven als rijkoppen.
3. Met deze instelling worden de veldwaarden weergegeven als kolomkoppen.
4. Met deze instellingen verschijnen de samenvattingswaarden.
De query maken
-
Klik op het tabblad Maken in de groep Query's op Queryontwerp.
-
Dubbelklik in het dialoogvenster Tabel weergeven op elke tabel of query die u als gegevensbron wilt gebruiken.
Als u meer dan één recordbron gebruikt, moeten de tabellen of query's zijn gekoppeld via velden die ze gemeenschappelijk hebben. Raadpleeg de sectie Zie ook voor meer informatie over het koppelen van tabellen en query's.
-
Sluit het dialoogvenster Tabel weergeven.
-
Klik op het tabblad Ontwerp in de groep Querytype op Kruistabel.
-
Dubbelklik in het queryontwerpvenster op elk veld dat u wilt gebruiken als bron voor de rijkoppen. U kunt maar liefst drie velden voor de rijkoppen selecteren.
-
Selecteer Rijkop voor ieder rijkopveld in de rij Kruistabel in het queryontwerpraster.
U kunt een expressie invoeren in de rij Criteria om de resultaten voor dat veld te beperken. Ook kunt u de rij Sorteren gebruiken om een sorteervolgorde op te geven voor een veld.
-
Dubbelklik in het queryontwerpvenster op het veld dat u wilt gebruiken als bron voor de kolomkoppen. U kunt slechts één veld selecteren voor de kolomkoppen.
-
Selecteer Kolomkop voor het kolomkopveld in de rij Kruistabel in het queryontwerpraster.
U kunt een expressie invoeren in de rij Criteria om de resultaten voor de kolomkop te beperken. Wanneer u echter een criteria-expressie gebruikt voor het kolomkopveld, wordt het aantal kolommen niet beperkt dat wordt gevonden door de kruistabelquery. In plaats daarvan wordt het aantal kolommen beperkt dat gegevens bevat. Stel, u hebt een kolomkopveld met drie mogelijke waarden: rood, groen en blauw. Als u het criterium ='blauw' toepast op het kolomkopveld, wordt in de kruistabel nog steeds een kolom weergegeven voor rood en een kolom voor groen, maar bevat alleen de kolom voor blauw bevat gegevens.
Als u de waarden wilt beperken die worden weergegeven als kolomkoppen, kunt u een lijst opgeven met vaste waarden met behulp van de eigenschap Kolomkoppen van de query. Zie de volgende sectie voor meer informatie.
-
Dubbelklik in het queryontwerpvenster op het veld dat u wilt gebruiken om de samenvattingswaarden te berekenen. U kunt slechts één veld selecteren voor de samenvattingswaarden.
-
Selecteer in het queryontwerpraster, in de rij Totaal voor het samenvattingswaardeveld, een statistische functie voor het berekenen van de waarden.
-
Selecteer in de rij Kruistabel voor het veld met de samenvattingswaarden de optie Waarde.
U kunt geen criteria opgeven voor een samenvattingswaardeveld of een dergelijk veld sorteren.
-
Ga naar het tabblad Ontwerp en klik in de groep Resultaten op Uitvoeren.
Vaste waarden opgeven voor kolomkoppen
Als u vaste waarden wilt opgeven die moeten worden gebruikt voor de kolomkoppen, kunt u de eigenschap Kolomkoppen van de query instellen.
-
Open de kruistabelquery in de ontwerpweergave.
-
Als het eigenschappenvenster niet zichtbaar is, drukt u op F4 om het te openen.
-
Controleer in het eigenschappenvenster, net boven het tabblad Algemeen, of bij Selectietype de optie Queryeigenschappen is geselecteerd. Is dat niet het geval, klik dan op een lege plek in de ruimte boven het queryontwerpraster.
-
Voer in het eigenschappenvenster op het tabblad Algemeen, in de eigenschap Kolomkoppen, een door komma's gescheiden lijst in met waarden die u wilt gebruiken als kolomkoppen.
Bepaalde tekens (zoals de meeste leestekens) zijn niet toegestaan in kolomkoppen. Als u deze tekens gebruikt in uw waardenlijst, worden deze elk vervangen door een onderstrepingsteken (_).
SQL-syntaxis voor een kruistabelquery
Een kruistabelquery wordt in SQL uitgedrukt met een TRANSFORM-instructie. De instructie TRANSFORM heeft de volgende syntaxis:
Aggfunction-selectstatement
transformeren Draaitabelveld [IN (waarde1[, waarde2[, ...]])]De TRANSFORM-instructie bevat de volgende onderdelen:
Onderdeel |
Beschrijving |
aggfunction |
Een statistische SQL-functie die op de geselecteerde gegevens wordt toegepast. |
selectstatement |
Een SELECT-instructie. |
pivotfield |
Het veld of expressie dat u wilt gebruiken om de kolomkoppen inde resultatenset van de query te maken. |
waarde1, waarde2 |
Vaste waarden die worden gebruikt om kolomkoppen te maken. |
In de SQL-weergave kunt u een onbeperkt aantal tabellen of query's gebruiken als recordbron voor een kruistabelquery. U kunt het ontwerp echter eenvoudig houden door eerst een selectiequery te maken die alle gewenste gegevens ophaalt voor uw kruistabelquery en vervolgens die query te gebruiken als de enige recordbron. Zie de sectie Zie ook voor meer informatie over het maken van een selectiequery.
-
Klik op het tabblad Maken in de groep Overige op Queryontwerp .
-
Sluit het dialoogvenster Tabel weergeven.
-
Ga op het tabblad Start naar de groep Weergaven, klik op Weergave en klik vervolgens op SQL-weergave.
-
Typ of plak de volgende SQL op het tabblad SQL object:
TRANSFORM SELECT FROM GROUP BY PIVOT ;
-
Op de eerste regel, na TRANSFORM, typt u een expressie voor het berekenen van de totaalwaarden, bijvoorbeeld Sum([Amount]).
Als u meer dan één tabel of query als gegevensbron gebruikt, voegt u de naam van de tabel of query toe als onderdeel van elke veldnaam, bijvoorbeeld Sum([Uitgaven].[Amount]).
-
Op de tweede regel, na SELECT, typt u een lijst met velden of veldexpressies die u wilt gebruiken als rijkoppen. Gebruik een puntkomma om de items in de lijst van elkaar te scheiden, bijvoorbeeld: [Budget].[Afdelings-id]; [Uitgaven].[Type].
-
Op de derde regel, na FROM, typt u een lijst met de tabellen of query's die u als recordbronnen wilt gebruiken, bijvoorbeeld Budget; Uitgaven.
-
Op de vierde regel, na GROUP BY, typt u dezelfde lijst met velden als in de SELECT-component in stap 6.
-
Op de vijfde regel, na PIVOT, typt u een veldnaam of expressie die u wilt gebruiken voor de kolomkoppen, bijvoorbeeld PIVOT [Budget].[Jar].
Als u in de SQL-weergave een sorteervolgorde wilt toevoegen aan een kruistabelquery, gebruikt u een ORDER BY-component.
-
Voeg een regel in tussen de GROUP BY-component en de PIVOT-component.
-
Typ op de nieuwe regel ORDER BY gevolgd door een spatie.
-
Typ de veldnaam of expressie waarop u wilt sorteren, bijvoorbeeld ORDER BY [Uitgaven]. [Expense_Class]
Als u een ORDER BY-component gebruikt, worden waarden standaard in oplopende volgorde gesorteerd. Als u in aflopende volgorde wilt sorteren, typt u DESC na de veldnaam of expressie.
-
Als u op een extra veld of expressie wilt sorteren, typt u een puntkomma en vervolgens de naam van het veld of de expressie. Er wordt gesorteerd in de volgorde waarin de velden of expressies worden weergegeven in de ORDER BY-component.
-
Typ aan het einde van de PIVOT-component in de SQL-weergave van uw kruistabelquery IN, gevolgd door een lijst met door puntkomma's gescheiden waarden (tussen haakjes) die u als kolomkoppen wilt gebruiken. Als u bijvoorbeeld IN (2007; 2008; 2009; 2010) invoert, is het resultaat vier kolomkoppen: 2007, 2008, 2009, 2010.
Als u een vaste waarde opgeeft die niet overeenkomt met een veldwaarde uit het draaitabelveld, wordt die vaste waarde een kolomkop voor een lege kolom.
-
Voeg een nieuwe regel in na de FROM-component in de SQL-weergave van uw kruistabelquery.
-
Typ WHERE gevolgd door een veldcriterium.
Als u meer criteria wilt gebruiken, kunt u de WHERE-component uitbreiden met behulp van de operatoren AND en OR. U kunt ook haakjes gebruiken om criteria in te delen in logische groepen.
Soms kan het handiger zijn om niet elke waarde van een veld of rij te gebruiken voor rij - of kolomkoppen, maar de waarden van een veld te groeperen in bereiken en vervolgens die bereiken te gebruiken voor rij - of kolomkoppen. Stel dat u een veld Leeftijd gebruikt voor de kolomkoppen. U kunt nu voor elke leeftijd een kolom gebruiken, maar wellicht geeft u er de voorkeur aan kolommen te gebruiken die leeftijdsgroepen vertegenwoordigen.
U kunt de functie IIf in een expressie gebruiken om bereiken te maken voor de rij- of kolomkoppen.
Tip: Als u intervallen wilt maken met een veld Datum/tijd, kunt u overwegen de wizard Kruistabelquery te gebruiken. Met de wizard kunt u datums groeperen in de intervallen Jaar , Kwartaal , Maand , Datum of Datum/tijd. Als u een ander interval wilt gebruiken, moet u de kruistabelquery in de ontwerpweergave maken, waarna u de in deze sectie besproken procedures gebruikt om de gewenste intervallen te maken.
-
Open de kruistabelquery in de ontwerpweergave.
-
Klik met de rechtermuisknop in het queryontwerpraster, in de rij Veld, op een lege kolom en klik vervolgens op In- en uitzoomen in het snelmenu.
-
Typ in het vak In- en uitzoomen een veldalias, gevolgd door een dubbele punt (:).
-
Typ IIf().
-
Typ tussen de haakjes na IIf een vergelijkingsexpressie om het eerste veldwaardebereik te definiëren.
Stel, u maakt bereiken voor het veld Leeftijd en u wilt elk bereik twintig jaar laten beslaan. De vergelijkingsexpressie voor het eerste bereik is [Leeftijd]<21.
-
Typ een komma achter de vergelijkingsexpressie en typ vervolgens een naam voor het bereik tussen aanhalingstekens. De naam die u opgeeft, is de kruistabelkop voor waarden die binnen het bereik vallen.
Typ bijvoorbeeld achter [Leeftijd]<21 een komma, gevolgd door "0-20 jaar".
-
Typ een komma achter de naam van het bereik (buiten de aanhalingstekens) en ga dan op een van de volgende manieren te werk:
-
Als u een ander bereik wilt maken, typt u IIf() en herhaalt u vervolgens stap 5, 6 en 7.
-
Typ voor het laatste bereik gewoon een bereiknaam.
Zo kan een volledig geneste IIf -expressie waarmee het veld Leeftijd wordt gescheiden in groepen van twintig jaar, er als volgt uit komen te zien (voor de leesbaarheid zijn regeleinden toegevoegd):
IIf([Age]<21,"0-20 years", IIf([Age]<41,"21-40 years", IIf([Age]<61,"41-60 years", IIf([Age]<81,"61-80 years", "80+ years"))))
Opmerking: Wanneer de expressie in Access wordt geëvalueerd, wordt dit gestaakt zodra een van de IIf -instructies waar blijkt te zijn. U hoeft de laagste waarde voor de bereiken niet op te geven, want elke waarde die onder de laagste waarde van een gegeven bereik valt, is reeds geëvalueerd als waar.
-
-
Selecteer in het queryontwerpraster Groeperen op in de rij Totaal.
-
Geef in de rij Kruistabel op of u de bereiken wilt gebruiken als rijkoppen of als kolomkoppen. Denk eraan dat u tussen de één en drie rijkoppen en slechts één kolomkop kunt opgeven.
U kunt uw kruistabelquery om gegevens laten vragen wanneer deze wordt uitgevoerd. Stel, u gebruikt verschillende rijkoppen en één met de naam Land/regio. U kunt natuurlijk altijd alle gegevens voor elk land of elke regio weergeven, maar wellicht wilt u liever uw query om een naam laten vragen, waarna de gegevens afhankelijk van de invoer van de gebruiker worden weergegeven.
U kunt aan elk rijkopveld een parametervraag toevoegen.
Opmerking: U kunt ook een parametervraag toevoegen aan een kolomkopveld, maar hierdoor wordt het aantal weergegeven kolommen niet beperkt.
-
Open de kruistabelquery in de ontwerpweergave.
-
Typ de vraagtekst tussen vierkante haken in de rij Criteria voor het rijkopveld waarvoor u de gebruiker wilt vragen gegevens in te voeren. De vraagtekst wordt als een prompt weergegeven wanneer de query wordt uitgevoerd.
Als u bijvoorbeeld [Welk land of welke regio?] typt in de rij Criteria, wordt wanneer de query wordt uitgevoerd een dialoogvenster weergegeven dat de vraag 'Welk land of elke regio?', een invoervak en de knop OK bevat.
Tip: Als u wilt dat uw parameter flexibel is, voegt u de expressie samen met jokertekens met behulp van de operator Like . In plaats van bijvoorbeeld [Welk land of welke regio?] als criterium te gebruiken, kunt u Like [Welk land of welke regio?] gebruiken. &"*" om ervoor te zorgen dat de parameter overeenkomt met een groter invoerbereik. Als u Like gebruikt, wordt het uiterlijk van de parameterprompt niet gewijzigd.
-
Klik op het tabblad Ontwerp in de groep Weergeven/verbergen op Parameters.
-
Voer in het dialoogvenster Queryparameters , in de kolom Parameters , dezelfde parameterprompt in die u hebt gebruikt in de rij Criteria. Neem ook de vierkante haken op maar gebruik geen gecombineerde jokertekens of de operator Like.
-
Selecteer in de kolom Gegevenstype het gegevenstype voor de parameter. Het gegevenstype moet overeenkomen met het gegevenstype van het rijkopveld.
Als het veld dat u gebruikt voor het berekenen van de samenvattingswaarden in uw kruistabelquery null-waarden bevat, worden die waarden genegeerd door de statistische functies die u gebruikt. Voor bepaalde statistische functies kunnen uw resultaten worden beïnvloed. Als u bijvoorbeeld een gemiddelde wilt berekenen, telt u alle waarden op en deelt u de uitkomst door het aantal waarden. Maar als het veld null-waarden bevat, worden deze null-waarden niet meegerekend in het aantal waarden.
In sommige gevallen kunt u er de voorkeur aan geven alle null-waarden te vervangen door nullen zodat de waarden worden meegerekend bij statistische berekeningen. U kunt de functie Nz gebruiken om null-waarden door nullen te vervangen.
Syntaxis van Nz
Nz ( variant [, waardealsnull ] )
De syntaxis van de functie Nz bevat de volgende argumenten:
Argument |
Beschrijving |
variant |
Vereist. Een variabele van het gegevenstype Variant. |
waardealsnull |
Optioneel (tenzij gebruikt in een query). Een variant waarmee een waarde wordt geleverd die als resultaat moet worden gegevens als het argument variant de waarde Null heeft. Met behulp van dit argument kunt u een andere waarde dan nul of een tekenreeks met lengte nul als resultaat geven. Opmerking: Als u de functie Nz gebruikt in een expressie in een query zonder het argument waardealsnull te gebruiken, resulteert dit in een tekenreeks met lengte nul in de velden die waarden null bevatten. |
-
Zorg ervoor dat de query is geopend in de ontwerpweergave en klik met de rechtermuisknop in het queryontwerpraster op het veld Waarde.
-
Klik op In- en uitzoomen in het snelmenu.
-
Zet in het vak In- en uitzoomen de veldnaam of expressie tussen haakjes en typ vervolgens Nz vóór de haakjes.
-
Typ , 0 voor het haakje sluiten.
Wanneer u Nz met het veld Verloren uren gebruikt om null-waarden om te zetten in nullen, ziet de voltooide expressie er bijvoorbeeld als volgt uit:
Nz([Hours Lost], 0)
-
Houd het eenvoudig Kruistabelquery's kunnen moeilijker leesbaar worden naarmate het aantal rijcombinaties groeit. Gebruik niet meer kolomkoppen dan u nodig hebt.
-
Overweeg uw kruistabellen te maken in stappen Beperk uzelf niet tot alleen tabellen. Vaak kunt u beginnen met het maken van een totalenquery, waarna u die query gebruikt als gegevensbron voor een kruistabelquery.
-
Kies uw kolomkopveld zorgvuldig Kruistabelgegevensbladen zijn vaak beter leesbaar wanneer het aantal kolomkoppen relatief klein blijft. Zodra u hebt bepaald welke velden u als koppen wilt gebruiken, kunt u overwegen het veld met de minste verschillende waarden te gebruiken voor de kolomkoppen. Als u bijvoorbeeld met uw query een waarde berekent op leeftijd en geslacht, kunt u beter geslacht dan leeftijd gebruiken voor de kolomkoppen omdat geslacht normaal gesproken minder mogelijke waarden kent dan leeftijd.
-
Gebruik een subquery in een WHERE-component U kunt een subquery als onderdeel van een WHERE-component gebruiken in een kruistabelquery.