Een veld verbergen in een rapport wanneer een ander veld leeg is

Status
Niet open voor verdere reacties.

E Officer

Gebruiker
Lid geworden
24 nov 2010
Berichten
16
Hey forum,

Ik zou graag in een rapport twee velden ("level1" en "level2" van het type combobox) verbergen wanneer een ander veld ("key" van het type tekstveld) leeg is. Het gaat hier over velden, niet over labels van velden (!).

In het voorbeeld dat ik toevoeg gaat het over de "5" en de "a" aan de linkerzijde welke ik eigenlijk niet geprint wil zien wanneer het tekstveld "Leaflets 3-5 enz" niet ingevuld is. Het resultaat zou zijn de opsomming met "-" en "°" dan beter tot zijn recht komt.

Is er een eenvoudige manier daarvoor of moet er ergens een code/expressie ingevoerd worden?

Thx

Capture.PNG
 
Het maakt niet uit of je een label of een veld verbergt, mocht dat enige geruststelling zijn ;) Is het simpel? Dan zouden we eerst een discussie moeten opstarten over wat simpel is, en die tijd kunnen we beter steken in de oplossing. En die is relatief simpel (toch simpel dus...) maar vereist wel enig licht programmeerwerk. Je moet namelijk een stukje code maken die wordt gebruikt bij het opmaken van het rapport. Die code ziet er bijvoorbeeld zo uit:

Code:
Private Sub Details_Format(Cancel As Integer, FormatCount As Integer)
If Nz(Trim(Me.Tussenvgsl), "") = "" Then
    Me.Tussenvgsl.Visible = False
Else
    Me.Tussenvgsl.Visible = True
End If
End Sub
In dit voorbeeld wordt een veld Tussenvgsl verborgen. Met hetzelfde gemak verberg je labels, afbeeldingen, lijnen etc.
 
Dank je, dat zal ik proberen.

Als ik dus veld "Level1" wil verbergen wanneer veld "Key Level 1 and 2" leeg is schrijf ik:

Private Sub Details_Format(Cancel As Integer, FormatCount As Integer)
If Nz(Trim(Me.Key level 1 and 2), "") = "" Then
Me.Level1.Visible = False
Else
Me.Level1.Visible = True
End If
End Sub

Waar plaats ik die code?:o In de propertys van het veld "Key Level 1 and 2" of in de propertys van de sectie (waar ik onder de tab Event 'OnFormat' vind)?
 
In de sectie lukt het niet.
Daar krijg ik een foutbericht. Zie bijlage.:confused:

Foutmelding.PNG
 
Dat verbaast me niks.... probeer je twee velden tegelijkertijd te controleren? Want wat is dit? Me.Key level 1 and 2
In een veldnaam, tekstvak, object etc. mogen geen spaties zitten. Probeer dat om te beginnen dus te vermijden. Als je ME.Key intypt, zul je het veld wel zien staan, en je kunt hem dan selecteren. Je zult zien, dat er dan gaan spaties meer inzitten. Alternatief is nog:
Code:
If Nz(Trim(Me("Key level 1 and 2")), "") = "" Then
    Me.Level1.Visible = False
Else
    Me.Level1.Visible = True
End If
 
Ok, beginnersfout, geen spaties gebruiken in veldnamen enz.:confused:
Ik heb me.key ingetikt en zag de veldnaam met underscores waar de spaties zitten.
Maar met die veldnaam krijg ik nog steeds dezelfde fout.
Ook als ik de spaties verwijder in de veldnaam van de tabel krijg ik dezelfde fout.
Idem met de andere code die je gaf.

Ik moet die code toch in de sectie van het rapport invullen onder de Tab Event en OnFormat, niet?
Ik knip en plak ze daar gewoon in.
 
Yep. Maak anders een simpel voorbeeldje (autorapport maken op een willekeurige tabel) en probeer het daar eerst eens uit. Zo heb ik 'm ook getest. Weliswaar op een tekstveld; bij een numeriek veld kun je beter op een getal testen. >0 bijvoorbeeld.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan