Waarde veld in Subformulier weergeven in veld Hoofdformulier

Status
Niet open voor verdere reacties.

tonp60

Gebruiker
Lid geworden
29 jul 2009
Berichten
136
Hallo

Ik gebruik onderstaande formule om de waarde van het tekstveld ArtikelPrijsInclBTW in het subformulier Artikel weer te geven in het hoofdformulier FrmVerzamelOrdergegevensFinancieel
Code:
=[Formulieren]![FrmVerzamelOrdergegevensFinancieel]![Subformulier Artikel].[Formulier]![ArtikelPrijsInclBTW]
Ik krijg echter de waarde #Naam? te zien.
Wat doe ik fout.
 
Heb je de formule met de Opbouwfunctie voor Expressies gemaakt?
 
Nee. Stond vermeld op de site van Microsoft. Kan het ook met opbouw?
 
Sterker nog: da’s eigenlijk de enige manier waarop je zeker weet dat de syntax goed is. Daar gaat nog wel eens wat fout mee. En klikken is een stuk makkelijker dan typen :).
 
Probeer deze eens:

Code:
Form![Subformulier Artikel]![ArtikelPrijsInclBTW]

De ganse code opbouwen via de wizard kan eveneens problemen geven indien het hoofdformulier zelf een subformulier is van een groter formulier.
Vermijd ook woorden zoals Formulier (dat lijkt nogal Nederlandstalig, en daar zullen andere talen niet mee overweg kunnen)
Ook besturingselementen die uit twee woorden bestaan vermijd ik zelf zo veel mogelijk. Dit is geen verplichting, maar ik vind dit zelf wel 's onhandig.
 
Heb het gedaan zoals Octafish had voorgesteld en onderstaande kwam er uit en het werkt.
Code:
=[Subformulier Artikel].[Form]![Tekst239]
 
De ganse code opbouwen via de wizard kan eveneens problemen geven indien het hoofdformulier zelf een subformulier is van een groter formulier
Hoe kom je daar bij? Je klikt de gewenste objecten aan in de objectenlijsten, en bouwt op die manier netjes en zonder typefouten je formule op. Wat is daar mis mee?
 
Met de opbouw via de wizard is niets mis mee... maar het kan verkeerd gaan. En dat is uit ervaring.

Ik heb even de test genomen met een bestand van mezelf.
Dit situatie:
- Ik heb een basisformulier (genoemd schakelbord... maar dat heeft niets te maken met het schakelbord dat in Access is ingebouwd)
- Dit schakelbord heeft een subformulier wat regelmatig kan wijzigen (een ander formulier wordt er in geladen)
- Dit nieuwe formulier kan op zijn beurt opnieuw een subformulier bevatten.

Wanneer ik nu het schakelbord via de wizard benader geraak ik niet verder dan het eerste subformulier. Helaas moet ik de waarde halen uit het tweede subformulier. Dus ga ik de waarde halen rechtstreeks via het juiste formulier, en dan krijg ik een dergelijke formule:

Code:
=[Formulieren]![frmBetalingsoverzicht]![txtTotaal]

Helaas geeft dat in gebruik een foutmelding.

Nieuwe poging dus: ik open rechtstreeks het subformulier, en ik ga verder via de wizard, waarna ik volgende code krijg:

Code:
=[Betalingsoverzicht].[Form]![txtTotaal]

En dit werkt wél. Maar vergis je dan niet... Betalingsoverzicht verwijst eigenlijk NIET naar het formulier, maar naar het kader waarin het subformulier zich bevindt. Je kan dit subformulier dus makkelijk vervangen door een ander formulier, met een andere naam, zolang er maar een besturingselement in zit met de naam txtTotaal.

Maar goed, ergens ben ik dus wel wat te snel geweest met mijn opmerking. De problemen doen zich vooral voor als je in het subformulier een waarde wil overnemen van het hoofdformulier, en dan werkt de wizard niet altijd zo goed. Ik test het nu niet direct uit, maar volgens mij kon je dit benaderen door [parent].[txtTotaal] enz. En dit laatste wordt niet door de wizard gegeven.
 
Laatst bewerkt:
@luc: je werkwijze is fout. Als je een element invoegt via de functie Opbouwen, is het van essentieel belang dat je dat doet vanuit de werkelijke situatie. En die is: je voegt iets toe vanuit een subformulier. Je moet dus vanuit het geopende hoofdformulier werken, en dat dan openen in Design view. Op dat moment kun je in de functie Opbouwen elementen pakken uit het hoofdformulier, én het gekoppelde subformulier. En dan werkt het perfect. Zodra je een subformulier opent in Design view, werkt het als hoofdformulier en kloppen de verwijzingen dus niet.

Ik ben daar in het verleden (denk aan korte broek, stoepranden, oliecrisis :)) ook over gestruikeld. Tot ik er achter kwam wat de oplossing was :).
 
@pletter: volgens mij is het alleen een Word document. Kun je gewoon uploaden.
 

Bijlagen

  • Syntax for subs.docx
    15,8 KB · Weergaven: 38
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan