Gegevens optellen uit verschillende tabellen

Status
Niet open voor verdere reacties.

keesbl

Gebruiker
Lid geworden
8 nov 2008
Berichten
694
Hallo mensen,

Ik heb een Access 2007 bestand waar ik de autokosten in wil bijhouden. Ik heb een aantal tabellen gemaakt, voor bv de benzinekosten, onderhoud, enz.
Nu wil ik de bedragen uit de verschillende tabellen optellen in een formulier zodat ik de totale kosten krijg. Ik gebruik hiervoor de formule: =som([benzinekosten]![bedrag])+som(onderhoud]![bedrag])+.....
Ik krijg echter in het tekstvak waar de formule staat de foutmelding: #fout.
Wat gaat hier mis?
Overigens zijn de tabellen niet via een relatie aan elkaar gekoppeld. Ligt hier eventueel het probleem?
Alvast bedankt!

Kees
 
som() is geen Access functie. Gebruik hiervoor DSum()

In jouw geval wordt dat:
Code:
=DSum("bedrag",benzinekosten)+DSum("Bedrag", "Onderhoud")+ ...

Enjoy!
 
Het kan zijn dat je de formule in de Detailsectie probeert te maken. Dat levert vermoedelijk de foutmelding op. Als je de formule in een koptekst of voettekst maakt, zal hij wel lukken. Overigens hoef je maar één keer =Som() te gebruiken; de overige componenten kun je met een puntkomma (;) toevoegen aan de formule.
 
Hallo Guus en Octafish,

Ik heb de functie Dsum gebruikt, en nu wordt wel de juiste waarde weergegeven. Dit lijkt dus de oplossing. Overigens, Guus, de functie Som werkt wel als ik deze toepas in het formulier van bv de Afschrijving, maar niet in het overzichtsformulier.
En, Octafish, Ik had de formule in de kopsectie van het formulier geplaatst, maar dat gaf toch de genoemde foutmelding.
Het lijkt dat de functie Som alleen werkt in hetzelfde formulier waarin ook de op te tellen waarden staan. Is dit het verschil tussen Dsum en Som?

Alvast hartelijk dank voor de oplossing en het meedenken!

Kees
 
Dat laatste is (ten dele) wel van toepassing; de SOM formule werkt op de gegevens op het huidige formulier. Wil je de waarden uit een subformulier laten optellen, dan moet je die dus eerst naar het hoofdformulier transporteren, bijvoorbeeld door een tekst te maken waarin je verwijst naar de subtotalen in het subformulier.
DSUM daarentegen is een database functie; die heeft dus verder niks nodig van formulieren die op dat moment geopend zijn. Met DSUM haal je gegevens rechtstreeks op uit de tabellen, waarbij je dan een criterium kunt opgeven dat je dan bijvoorbeeld uit een formulier haalt.
 
Dank je wel Octafish voor de extra uitleg. Ik kan voorlopig weereven vooruit met de adviezen en oplossingen.

Kees
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan