Subformulier niet tonen

Status
Niet open voor verdere reacties.

RadboudAKF

Gebruiker
Lid geworden
3 nov 2010
Berichten
219
Goedemorgen,

Ik heb een subformulier geplaatst op een (hoofdformulier). In dat subformulier worden bepaalde waardes getoond van artikelen in het hoofdformulier. (we hebben het over gegevens betreffende geneesmiddelen). Soms zijn die waardes LEEG (of beter gezegd de Waarde=NEE) en wil ik het subformulier helemaal niet tonen in het hoofdformulier.

Hoe kan ik er voor zorgen dat subformulier niet wordt getoond als die waardes NEE zijn?

In de bijlage ziet u een voorbeeld:

-bovenste artikel: in het subformulier wordt een waarde weergegeven. (Intrinsiek = Ja)

-onderste artikel: in het subformulier wordt geen waarde weergegeven: (Intrinsiek = Nee) (In het geval dat geen der vinkjes een warde JA heeft wil ik subformulier niet tonen.

Bij welke gebeurtenis kan ik ervoor zorgen dat SubForm.visible=False is?

Groet,

RadboudAKF aka Jan
 

Bijlagen

  • Subform1.png
    Subform1.png
    20 KB · Weergaven: 28
Ik stuurde verkeerde bijlage mee..... hierbij de juiste...
 

Bijlagen

  • Subform1.jpg
    Subform1.jpg
    104,3 KB · Weergaven: 41
Als de vakjes op het formulier aan- of uit worden gezet, kun je de waarden van de selectievakjes bij elkaar optellen (met ABS) en als de waarde 0 is, hou je het subformulier onzichtbaar en anders (>0) zichtbaar maken.
 
Beste Octafish,

Ik begrijp helaas niet wat je bedoelt.
Bij welke gebeurtenis stel ik dat dan in? Wat is ABS?

Het is niet een formulier waarop gemuteerd kan worden. Het formulier is slechts een weergave van waardes, geen mutatieformulier.

Groet,

Jan
 
Kijk, ondanks dat je het niet begrijpt, heb je toch het juiste antwoord gegeven :). ABS is een functie (ABSolute) die een getal altijd positief maakt. Een selectievakje heeft twee waarden (behalve Null als je dat ook toestaat): -1 en 0. Als je de waardes van de selectievakjes bij elkaar optelt (en positief maakt) krijg je dus de waarden 0, 1, 2 of 3. Als de uitkomst 0 is, moet het subformulier verborgen blijven, is de uitkomst dus groter, dan wil je hem zien.
Omdat het formulier niet gemuteerd wordt, kun je de check op één plek doen, namelijk de gebeurtenis <Bij aanwijzen>. Deze wordt getriggerd bij elk record dat je bekijkt, en dat is dus perfect.

Code:
Private Sub Form_Current()
    If Abs(Me.checkbox1) + Me.checkbox2 + Me.checkbox3) > 0 Then
        Me.objSubformulier.Visible = True
    Else
        Me.objSubformulier.Visible = False
    End If
End Sub

Ik heb het formulier object de naam "objSubformulier" gegeven; die moet je uiteraard nog even aanpassen. En de naam van de checkboxen vermoedelijk ook.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan