Optellen van een waarde uit een subformulier

Status
Niet open voor verdere reacties.

patRRick900RR

Gebruiker
Lid geworden
24 jun 2013
Berichten
27
Hallo,

Ik ben een DB aan het maken voor het uitrekenen van onderhoudscontracten. Elke debiteur kan meerdere lokaties hebben en elke lokaties heeft meerdere onderhoudsjaren.

Ik een formulier [frm_onderhoudsdetails] met daarop een subform [sbf_onderhoudsregels]. Het subformulier is opgebouwd uit een query die ervoor zorgt dat alleen de onderhoudsregels voor het betreffende jaar en locatie getoond wordt. De query is samengesteld uit twee tabellen, met 1 veld als lookup [Artikelnummers], zodat die later in het form eenvoudig geselecteerd kan worden.

Nu wil ik de som berekenen van het veld [Aantal], alleen van die records waar het veld [Artikelnummers] gelijk is aan 10 (numeriek). In de footer kan in d.m.v. = sum ([Aantal]) het totaal optellen, echter als ik ga werken met
=SUM(iif([Artikelnummer] = "10", [Aantal],0)) krijg ik de volgende foutmelding:
"You omitted an operand or operator, you entered an invalid character or comma, or you entered text without surrounding it in quotation marks.

Wat ik ook probeer ik krijg dit niet werkend. Ook met Dsum heb ik alles geprobeerd.

Ik hoop dat iemand mij hierbij kan helpen, want SUM, DSUM drijft me langzamerhand tot waanzin.
Als bijlage een schermkopie.

Alvast bedankt!
Patrick
 

Bijlagen

  • foutmelding.jpg
    foutmelding.jpg
    102,8 KB · Weergaven: 99
Je formule zou moeten werken, ware het niet dat je een getal als tekst behandelt. En dat moet je natuurlijk nooit doen:
Code:
=Sum(IIf([Artikelnummer] = 10, [Aantal],0))
 
Hallo Octafish,
Helaas heb ik dat ook al geprobeerd, dan krijg ik de foutmelding "you may have entered an operand without an operator".
Ik dacht dat het misschien komt omdat de row source van het veld [Artikelnummers] uit een andere tabel komt, echter als ik een ander criterium selecteer, bijvoorbeeld [Omschrijving] = "Artikel 10" dan krijg ik dezelfde foutmeldding...
Ik hoop dat je nog een suggestie hebt.
 
Gebruik je wel de juiste lijstseparator? Je gebruikt in je voorbeeld een komma (,), maar doorgaans is in Nederland de puntkomma (; ) ingesteld.
 
Helaas heb ik ook al geprobeerd, krijg weer de melding:.....operand without operator....
Ook trachten te selecteren op een ander veld, ook daar dezelfde melding.
Hoop dat jullie nog suggesties hebben.
 
Dan wordt het èrg lastig om te zeggen wat er fout is. Ik heb zelf een Bestellingen formulier getest met deze formule:
Code:
=Som(IIf([ArtikelID]="HP-C4838A";[Totaal];0))
En die werkt prima. ArtikelID is in mijn voorbeeld een tekstveld, zoals je ziet. Veel meer dan een perfect werkend voorbeeld kan ik er ook niet van maken.
Dan wordt het derhalve tijd voor een voorbeeldje :)
 
Net alle code en velden even verwijderd en opnieuw aangemaakt. Nu werkt de code op basis van ; als lijstseparator!
Bedankt Octafish!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan