anoniem Geplaatst: 29 oktober 2002 Delen Geplaatst: 29 oktober 2002 hallo Ik wil in access een rapport(of een formulier) maken, waarin velden komen te staan, maar deze velden mogen alleen te zien zijn wanneer er een waarde is ingevuld in de tabel bij dat veld. Nu heb ik geen idee hoe ik dit kan doen, ik heb wel wat gedacht aan werken met vissible en niet vissible maken, maar dan krijg je grote lege vlakken zodra er niets is ingevuld. Het gaat om een groot aantal velden, namelijk 200, maar er is slechts maar een aantal ingevuld, welke en hoeveel dit zijn is steeds anders. Ook in de help kon ik niks vinden. Ik maak gebruik van MS Access 2000(nl). Ik hoop dat iemand een idee heeft hoe ik dit kan doen? Quote Link naar reactie
anoniem Geplaatst: 29 oktober 2002 Auteur Delen Geplaatst: 29 oktober 2002 Tja, ik zou zeggen; maak 200 tekstboxjes aan en a.d.h.v. van if statements laat je ze één voor één vullen. + de labels uiteraard. Dus van links naar rechts. Heb je ook geen lege vlakken. Quote Link naar reactie
anoniem Geplaatst: 30 oktober 2002 Auteur Delen Geplaatst: 30 oktober 2002 [quote="Wiep Corbier"]Tja, ik zou zeggen; maak 200 tekstboxjes aan en a.d.h.v. van if statements laat je ze één voor één vullen. + de labels uiteraard. Dus van links naar rechts. Heb je ook geen lege vlakken.[/quote] Ik snap even niet wat je hiermee bedoelt, want als dan een vakje niet gevuld wordt heb je toch weer wel een leeg vlak??? Of zie ik het zo verkeerd? Quote Link naar reactie
anoniem Geplaatst: 30 oktober 2002 Auteur Delen Geplaatst: 30 oktober 2002 [quote:a63c71e6d2]Of zie ik het zo verkeerd?[/quote:a63c71e6d2] Inderdaad. Het aantal te vullen vakjes verschijnt van links naar recht naast elkaar. Het aantal vakjes dat verschijnt is afhankelijk van het aantal te vullen vakjes. Ik snap je verwarring wel, maar dan moet je weten dat dat je onafhankelijke tekstvakken dient te gebruiken. Het maakt een onafhankelijk tekstvak namelijk niets uit of er de ene keer een adres en de andere keer een berekening in staat. Volg je mij? Voorbeeld: Je hebt 3 onafhankelijke teksvakken. Je hebt een tabel met Naam, adres, en woonplaats. Nu komt in record 1267 geen adres voor: tekstvak 1 = naam tekstvak 2 = woonplaats tekstvak 3 => visible=false. Quote Link naar reactie
anoniem Geplaatst: 30 oktober 2002 Auteur Delen Geplaatst: 30 oktober 2002 Ik snap nu wat je wilt, maar ik zou niet echt weten hoe ik dit zou moeten doen in VBA. Zou je misschien een klein voorbeeldje voor een code kunnen geven? Quote Link naar reactie
anoniem Geplaatst: 3 november 2002 Auteur Delen Geplaatst: 3 november 2002 Ik gebruikt deze techniek om uw probleem op te lossen. In plaats van een hele rij tekstvakken te plaatsen kan je ook een deel van de tekstvakken op elkaar zetten zodat er altijd een zichtbaar blijft. Door middel van VBA dient je zo te programmeren dat bij focus de ene tekstvak zichtbaar is en de andere onzichtbaar. Quote Link naar reactie
anoniem Geplaatst: 9 november 2002 Auteur Delen Geplaatst: 9 november 2002 Wat is dat toch makkelijk met VB-script op een webpage, gewoon niet de nobreakspace meestreamen in de <td> ;-) Maar in Access is dat wat omslachtiger. Misschien is het een optie om het formatten van de detailsectie dan maar in zijn geheel in de Detail_Format()-procedure te programmeren, elk tekstvak even breed te maken en de Left-eigenschap voor ieder veld dat niet Null of "" is verhogen met (teller*breedte+marge): ff uit het hoofd: (eerst 200 tekstvakken over elkaar tegen de linkermarge aanzetten) [code:1:95081de37f] For i = 1 To Count(Me.Fields) If Me.Fields(i) <> "" And Not IsNull(Me.Fields(i)) Then Teller = Teller + 1 Me.Controls(i).ControlSource = Me.Fields(i).Name Me.Controls(i).Left = Teller * 2 + 0.1 Me.Controls(i).Visible = True End If Next i [/code:1:95081de37f] Of zoiets, weet niet of ik goed naar de betreffende collecties verwijs... Benieuwd of het werkt... Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen