Formule berekennen

huizemeul

Gebruiker
Lid geworden
17 mrt 2013
Berichten
117
Microsoft profesional office 2024 / Access
Is er een manier om records van elkaar af te trekken die niet in het zelfde veld staan ?
Moet je dan records datums in mindering brengen.
Heb maar een veld gemaakt: zo zou het moeten worden
 

Bijlagen

Je moet toch even wat beter omschrijven wat je wilt. Eén ding wat volslagen onmogelijk is in Access, is om records van elkaar af te trekken. Om de eerste denkfout aan te geven: een record staat nooit in een veld. Het is andersom: velden zijn onderdeel van een record. Zie het als een tabel in een Excel werkblad, waarin één rij één record voorstelt, en één kolom één veld voorstelt. Eén record bevat dus de gegevens (velden) van één specifiek gegevensblok.

Ik heb je de nog niet bekeken, maar ik wil eerst van je weten wat je precies wilt vastleggen. Het enige dat ik mij kan voorstellen, is dat je iets als metingen vast wil leggen om daaruit verschillen te berekeningen. Dan denk ik bijvoorbeeld gasverbruik, waterverbruik of elektriciteit. De eerste van de maand neem je de meterstanden op, dat doe je de volgende ook, en de maand daarop ook weer. En dan wil je het verbruik zien in een overzicht, waarbij je de stand van maand 2 neemt, en daar maand 1 vanaf trekt, en zo verder.

Als dát is wat je wil: ja, dan kan prima in een query. In Excel zou je dat heel simpel doen door in C2 een formule te maken: =B2-B1, en die formule door te trekken. In Access is dat dus wat ingewikkelder, maar het kan prima.
 
Denkfout opgelost. Het is id andersom.
Ik denk te horen dat het niet gaat lukken wat ik zou? willen. In Excel is dat gemakkelijk.
Veld IN: eerste record optellen / aftrekken met tweede record uit Veld UIT.
Had wel een veld gemaakt met wat ik zou willen.
 
Ok, ben ik benieuwd hoe je het hebt opgelost met je query. Want ik snap niet helemaal waarom het toevoegen van een extra veld je probleem oplost?
 
Ik heb het helemaal niet opgelost. Heb gewoon de bedragen ingevuld zo als ik zou willen. Ik denk dat het niet mogelijk. Dacht dat het simpel zou zijn. Gewoon in en uit van elkaar aftrekken. Maar dan per record.
 
Nogmaals, zoals ik dat eerder zei: dat is geen enkel probleem. Maar je tabelopzet deugt niet. Je hebt aparte bedragen voor In en Uit, en dat zou ik dus nooit doen. Mijn insteek zou zijn: [Datum], [Bedrag], [Mutatie]. Je voert de tevens nu in dat je op regel 1 een bedrag [In] invoert, in regel 2 een bedrag [Uit], en regel 3 weer [In], regel 4 [Uit] en zo verder. Dat is nodeloos ingewikkeld, en maakt een logische verwerking onmogelijk.

Je opmerking dat het niet mogelijk is, geldt wellicht voor jou, maar niet voor gevorderde gebruikers :).
 
Ik ben uitgegaan van jouw insteek. Ik denk dat je zoiets voor ogen hebt.
Nu zou ik willen dat in de Query er nog een veld komt die per record zegt wat ik ik per invoer overhou of te kort kom. Hoop dat ik duidelijk genoeg ben? In principe was alles mogelijk voor gevorderde!!!!!
Bericht automatisch samengevoegd:

tblNieuw en Query Nieuw _kruistabel
 
Sorry als ik soms laat reageer. Ben Mantelzorger voor de vrouw. Dus rtijd is spaars.
Alle verbeteringen worden in dank geaccepteerd.
 

Bijlagen

Ik zal er vandaag even naar kijken. Al snap ik niet helemaal wat je bedoelt met 'per record zien wat je overhoudt of tekort komt'. In je eerste voorbeeld had je twee velden voor [begroot in] en [begroot uit], waarmee je dus blijkbaar per handeling in één keer zowel de uitgegeven/ontvangen bedragen invult, als de bedragen die je daarvoor in de begroting hebt staan. Een constructie die mij enigszins verbaasde toen ik hem bij de andere vraag las, en dat blijft-ie doen.

Normaal gesproken stel je voor een project een begroting op, en die zou ik dan, als die is uitgesplitst, in een aparte tabel zetten op basis van je stelposten. In de tabel met inkomsten/uitgaven voor dat traject vul je de echte bedragen in. En die twee tabellen gebruik je dan voor je financiële management, waarbij je per stelpost kijkt hoeveel budget je nog hebt.

Ik krijg nu de indruk dat in jouw situatie je één record hebt per stelpost (en een bedrag), en dat je vervolgens het werkelijke bedrag één keer uitgeeft of ontvangt. Het is veel logischer dat je de inkomsten en uitgaven per stelpost over meerdere records ontvangt/uitgeeft, en dat je het verschil tussen begroting en werkelelijke inkomsten/uitgaven over een langere periode kunt volgen.

Om dus écht nuttige hulp te kunnen geven, moeten wij als helpers wel een beetje weten wat je nu aan het doen bent. Dat inzicht is er totaal niet. En dan kan ik ook niet veel meer doen dan zeggen dat het allemaal prima kan wat je wilt.

P.s. Ik zie dat je inmiddels, terwijl ik aan het tikken was, een nieuwe dag hebt toegevoegd. Dat gaat zeker helpen 😊. Als oud mantelzorger snap ik in welke situatie je zit; sterkte daarmee!
 
Dank je.
Nu ben ik helemaal de kluts kwijt. Twee ! tabellen. Was al op zoek naar een voorbeeld opzet die ik dan naar mijn hand kon zetten. Want nu duizeld het me allemaal. Leuk om te stoeien maar het moet wel met een goed vooruitzicht gepaard gaan. Misschien te ver voor mijn simpele brein ??
 
Zoals al herhaaldelijk aangehaald horen berekende velden eigenlijk niet in tabellen thuis. Bovendien zijn tabellen alleen bedoeld om gegevens in op te slaan. In tabellen opgeslagen gegevens presenteer je op formulieren of rapporten.
Wat in dit geval mooi uitkomt is dat je op rapporten zogenaamde "Lopende totalen" kunt opnemen. En dat is volgens mij precies wat je nodig hebt.

Dus: verwijder berekende velden uit je tabel en maak een rapport met een lopend totaal. In bijgevoegde voorbeeld database heb ik die aanbevelingen doorgevoerd. Zie het rapport "Mijn Tabelletje". In het rapport heb ik een niet-gebonden veld opgenomen (Saldo) dat berekend wordt als Nz([In])+Nz([Uit]). Van dat veld heb ik een lopend totaal gemaakt. Zie onderstaande weergave van de eigenschappen van het veld Saldo:
running.webp

Nog een welgemeend advies tot slot: vergeet Access. Voor wat je wil is Excel naar mijn idee net zo goed geschikt en dat is veel eenvoudiger in gebruik.
 

Bijlagen

Terug
Bovenaan Onderaan