Combobox in subformulier

Status
Niet open voor verdere reacties.

rootz

Gebruiker
Lid geworden
23 nov 2006
Berichten
20
Hoi

In een formulier welke ik als subformulier wil gaan gebruiken zit een combox.
Werkt allemaal goed. Pas als ik hem in het hoofdformulier zet moet ik een parameter opgeven. en werkt t subfromulier niet.


Alle voorbeelden welke hier staan zijn volgens mij gebasseerd op enkele formulieren en ik kom er niet uit. Moet er een code in het hoofd formulier *bij laden* ofzo?

Hellup!
 
Kun je de gestripte db posten? Normaal gesproken zou een keuzelijst geen last hoeven te hebben van een moederformulier. Een parametervraag krijg je als je een veldnaam gebruikt die ofwel niet bestaat, ofwel dubbel is gebruikt.
In jouw geval zou het kunnen zijn dat je in een query in het formulier verwijst naar een veld op dat formulier. Als je het formulier vervolgens als subformulier gebruikt, klopt die verwijzing waarschijnlijk niet meer, want het pad naar het formulierveld is nu gewijzigd: er staat een formulier voor. Dat moet dan dus ook worden aangepast. Maar of dat bij jou het geval is, kan ik van afstand uiteraard niet zien...
 
Hierbij

Ff shift ingedrukt houden bij openen.
Hoop dat je er wat mee kan. Hard strip!
 

Bijlagen

  • Kopie (3) van DAT2.zip
    53,2 KB · Weergaven: 14
De versie die je hebt gepost doet het inderdaad niet meteen; er zitten wat subformulieren op je hoofdformulier die niks doen, dus die heb ik er maar gelijk afgegooid. Na wat doortesten kwam ik in je subformulier deze kwajongen tegen:

SELECT TblOpvolging.VervolgNaam, TblOpvolging.Vervolg_id, TblOpvolging.Target_id
FROM TblOpvolging
WHERE (((TblOpvolging.Target_id)=[Forms]![Combo Form]![Target_id]));

Deze code zat achter de keuzelijst Vervolg_id
Ik heb verder geen verwijzing gevonden naar het formulier [Combo Form], dus misschien is dat je boosdoener.
Overigens: als je een keuzelijst maakt met 3 kolommen als rijbron, dan moet je op het tabblad Opmaak ook 3 kolommen definieren, zeker als je kolom 2 als afhankelijke kolom gebruikt.
Als ik de keuzelijsten aanpas, en de niet-werkende subformulieren verwijder, dan doet de rest het prima.
 
Hi Octa..
Ontzettend bedankt voor je antwoord.
Heb de aanpassing (wederom) gemaakt en de [Combo Form] vervangen met de naam van het Subformulier.
Had je het verkeerde bestand gestuurd.
Alle aanpassingen zoals je aangaf heb ik gedaan, echter het werkt niet. Het Subformulier apart geopend werkt deze wel.
Mogelijk door de definitie van de 3 kolomkoppen?
 

Bijlagen

  • Kopie (3) van DAT2.zip
    70,1 KB · Weergaven: 21
Laatst bewerkt:
Ga ik toch weer hetzelfde antwoord geven:
Op je (sub)formulier stel je met de keuzelijst Target_ID een waarde in op de keuzelijst Vervolg_ID. Dit doe je niet door rechtstreeks een SQL commando toe te wijzen, wat ik zelf zou doen, maar door onder de keuzelijst Vervolg_ID een query te hangen, QryOpvolging.
In deze query zit de volgende verwijzing:
WHERE (((TblOpvolging.Target_id)=[Forms]![TblVisitSub]![Target_id]));

Dit werkt prima, zolang je subformulier een zelfstandig formulier is. Dat had je ook al gemerkt. Hang je het formulier als subformulier in een ander formulier, dan klopt de verwijzing niet meer: het veld Target_ID staat nu hier:
Forms![TblVisitHoofd]![TblVisitSub].Form![Target_id]

De oplossing is dus: de verwijzing in je query aanpassen, en naar het juiste formulier leiden, of de code onafhankelijk maken van een query, en via VBA op de keuzelijst zetten. (dat laatste zou ik dus doen...)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan