Du kan använda beräknade kontroller i formulär och rapporter i Access-databaser för att visa resultatet av en beräkning. Om du till exempel har en rapport som visar antalet sålda artiklar och priset för varje enhet kan du lägga till en beräknad textruta som multiplicerar de två fälten för att visa det totala priset. Egenskapen Kontrollkälla för den beräknade textrutan innehåller ett uttryck som multiplicerar två fält (antalet objekt gånger enhetspriset) för att erhålla resultatet.
Vad vill du göra?
- Skapa en beräknad kontroll
- Ändra en bunden kontroll till en beräknad kontroll
- Läs mer om vilka typer av kontroller som kan användas som beräknade kontroller
Skapa en beräknad kontroll
Med den här proceduren kan du skapa en beräknad kontroll utan att använda en kontrollguide.
Högerklicka på formuläret eller rapporten i navigeringsfönstret och klicka sedan på Designvy.
Klicka på verktyget för den typ av kontroll som du vill skapa i gruppen Kontroller på fliken Design.
En lista över kontrolltyper som kan användas som beräknade kontroller finns i avsnittet Lär dig vilka typer av kontroller som kan användas som beräknade kontroller.Placera pekaren på den plats i formuläret eller rapporten där du vill att kontrollen ska placeras, och infoga kontrollen genom att klicka på formuläret eller rapporten.
Om en kontrollguide startas klickar du på Avbryt för att stänga den.
Markera kontrollen, tryck på F4 för att visa egenskapslistan och skriv sedan ett uttryck i egenskapsrutan Kontrollkälla . Om du vill använda uttrycksverktyget för att skapa uttrycket klickar du på
bredvid egenskapsrutan Kontrollkälla .Växla till formulärvyn eller rapportvyn och kontrollera att den beräknade kontrollen fungerar som väntat.
Obs
- Inled varje uttryck med operatorn = . Exempel: =[Enhetspris]*,75.
- Mer information om hur du skapar uttryck finns i artikeln Lär dig att bygga ett uttryck.
- Om du behöver mer utrymme för att skriva ett uttryck i egenskapsrutan Kontrollkälla trycker du på SKIFT+F2 för att öppna rutan Zooma .
- Om formuläret eller rapporten baseras på en fråga vill du kanske placera uttrycket i frågan i stället för i en beräknad kontroll. Det kan ge bättre prestanda, och om du ska beräkna summor för grupper med poster är det enklare att använda namnet på ett beräknat fält i en mängdfunktion.
- När du sorterar efter en beräknad kontroll i ett formulär eller en rapport bör du kontrollera att egenskapen Format för kontrollen är rätt inställd. Annars kanske beräknade numeriska värden eller datumvärden sorteras alfabetiskt i stället för numeriskt.
Ändra en bunden kontroll till en beräknad kontroll
Ett bra sätt att skapa en beräknad kontroll är att först skapa en bunden kontroll (till exempel genom att dra ett fält från fönstret Fältlista till formuläret eller rapporten) och sedan redigera den bundna kontrollens egenskap Kontrollkälla för att skapa ett uttryck. Det här fungerar bra förutsatt att du kontrollerar att namnet på kontrollen inte står i konflikt med något av fältnamnen i uttrycket. Mer information om hur du skapar en bunden kontroll genom att dra ett fält från fönstret Fältlista finns i artikeln Lägga till ett fält i ett formulär eller en rapport.
Förutsatt att du redan har skapat den bundna kontrollen kan du följa anvisningarna nedan för att ändra den till en beräknad kontroll och undvika namnkonflikter.
- Högerklicka på formuläret eller rapporten i navigeringsfönstret och klicka sedan på Designvy.
- Klicka på fältet som du vill ändra och tryck sedan på F4 så att egenskapslistan öppnas.
- Om egenskapen Namn matchar egenskapen Kontrollkällapå fliken Alla på egenskapssidan redigerar du egenskapen Namn så att de två egenskaperna inte matchar. Kontrollera att namnet du anger inte är ett reserverat ord eller namnet på ett annat fält i databasen. Mer information om reserverade ord finns i artikeln Lär dig mer om reserverade ord och symboler i Access.
- Redigera strängen i egenskapsrutan Kontrollkälla så att den innehåller det uttryck du vill använda.
- Tryck på CTRL+S för att spara ändringarna.
- Växla till layoutvyn eller formulärvyn och kontrollera att den beräknade kontrollen fungerar som väntat.
Om kontrollen inte visar de data du vill ha (t.ex. om Access visar #Name? i kontrollen), kontrollera datakällan för formuläret eller rapporten för att säkerställa att alla fält som du använde i uttrycket är tillgängliga. Om datakällan är en fråga kan du behöva lägga till ett eller flera fält i frågan för att uttrycket ska fungera.
Obs
- Inled varje uttryck med operatorn = . Exempel: =[Enhetspris]*,75.
- Om du behöver mer utrymme för att skriva ett uttryck i egenskapsrutan Kontrollkälla trycker du på SKIFT+F2 för att öppna rutan Zooma .
- Om formuläret eller rapporten baseras på en fråga vill du kanske placera uttrycket i frågan i stället för i en beräknad kontroll. Det kan ge bättre prestanda, och om du ska beräkna summor för grupper med poster är det enklare att använda namnet på ett beräknat fält i en mängdfunktion.
- När du sorterar efter en beräknad kontroll i ett formulär eller en rapport bör du kontrollera att egenskapen Format för kontrollen är rätt inställd. Annars sorteras beräknade numeriska värden eller datumvärden i alfabetisk ordning i stället för numeriskt.
Läs mer om vilka typer av kontroller som kan användas som beräknade kontroller
Textrutor är det vanligaste valet för en beräknad kontroll eftersom de kan visa så många olika typer av data. Alla kontroller med egenskapen Kontrollkälla kan dock användas som beräknade kontroller. I många fall är det inte meningsfullt att använda en viss kontrolltyp som en beräknad kontroll, eftersom du inte kan uppdatera den kontrollen på samma sätt som du kan uppdatera en bunden eller obunden kontroll. Om du till exempel placerar en kryssrutekontroll i ett formulär och sedan anger ett uttryck i egenskapen Kontrollkälla för kryssrutan, kan du inte längre markera eller avmarkera kryssrutan genom att klicka på den. Kryssrutan visas markerad eller avmarkerad, baserat på resultatet av uttrycket. Om du markerar kryssrutan visas en varning i statusfältet i Access: Det går inte att redigera kontrollen – den är bunden till uttrycket<som du uttrycker>. I en rapport kan det dock vara praktiskt att basera en kryssrutekontroll på resultatet av en beräkning, eftersom kontroller i rapporter endast används för att visa information.