Gustav Brock
gustav at cactus.dk
Sun Aug 24 04:35:02 CDT 2003
Hi Pedro Tough vacation/holiday? If you read the code there is an "inner". There's also an "i" .. What to do is left to you as a small after-vacation-exercise! Also, _always_ state Option Explicit in the declarations section of every code module. /gustav > Hello Jim and rest of the group, > sorry for the late responce. I have been on holliday. > When i use the code you gave me, i get an compile error: Sub or Function not defined. Controls is selected. > I can't find the missing reference, or is there someting else wrong > Also i don't understand why jou use: Dim inner As Integer. There isn't an: inner, in the code > Can You help me. > TIA > Pedro Janssen > ----- Original Message ----- > From: Jim DeMarco > To: Access Developers discussion and problem solving > Sent: Friday, August 01, 2003 2:08 PM > Subject: RE: [AccessD] select more then one > How about something like this: > <code> > Function ShowHide(ctl as Control) > Dim inner As Integer > Dim outer as Integer > Dim ShowIndex As Integer > ShowIndex = Right(ctl.Name, 1) > For outer = 1 To 5 > For i = 1 To 26 > If outer = Cint(ShowIndex) Then > Controls("Field" & ShowIndex & "_" & CStr(i)).Visible = True > Else > Controls("Field" & outer & "_" & CStr(i)).Visible = False > End If > 'or > Controls("Field" & outer & "_" & CStr(i)).Visible = (outer = Cint(ShowIndex)) > Next inner > Next outer > End Function > </code> > or use this simplified version to replace the If block: > <snip> > Controls("Field" & outer & "_" & CStr(i)).Visible = (outer = Cint(ShowIndex)) > </snip> > Assuming chbProductcode1 through 5 are controls call this function from each of the (chbProductcode1) click or change event passing in the name of the calling control: > <usage> > Sub chbProductcode1_Click() > ShowHide(chbProductcode1) > End Sub > </usage> > HTH, > Jim DeMarco > Director of Product Development > HealthSource/Hudson Health Plan