Although I've never tried something like this, you could in theory squash the questions closer together by setting the Top property for your question in code, which in itself is easy. The code would look like:
me!ControlName.top = 1440 'Move this control down 1 inch from the top of the form.
When setting either the top or left properties of an object using code, the unit of measure is "twips" (I'm not pulling your leg, that's what they're called!). One twip is equal to 1/20th of a point or 1/1440 of an inch.
The tricky part is determining what value to assign to each question so you don't stack them on top of one another. There's a number of different ways you could approach this, and which you choose is probably a personal choice. Probably the easiest would be something like this in your OnCurrent event:
----------------------
Private Sub Employed_AfterUpdate()
If Me!Employed = -1 Then 'if check is yes
Me!EmpPayslip.Visible = True
Me!Label17.Visible = True
Me!Label9.Visible = True
Me!Label10.Visible = True
ElseIf Me!Employed = 0 Then 'if check is no
Me!EmpPayslip.Visible = False
Me!Label17.Visible = False
Me!Label9.Visible = False
Me!Label10.Visible = False
End If
End Sub
Private Sub SelfEmployed_AfterUpdate()
If Me!SelfEmployed = -1 Then 'if check is yes
If Me!Employed = -1 Then
Me!SEmpPayslip.Top = X 'Where X is equal to the TOP value of first question
Me!Label18.Top = X
Me!Label13.Top = X
Me!Label14.Top = X
End IF
Me!SEmpPayslip.Visible = True
Me!Label18.Visible = True
Me!Label13.Visible = True
Me!Label14.Visible = True
ElseIf Me!SelfEmployed = 0 Then 'if check is no
If Me!Employed = -1 Then
Me!SEmpPayslip.Top = Y 'Where Y is equal to the initial TOP value of 2nd question
Me!Label18.Top = Y
Me!Label13.Top = Y
Me!Label14.Top = Y
End IF
Me!SEmpPayslip.Visible = False
Me!Label18.Visible = False
Me!Label13.Visible = False
Me!Label14.Visible = False
End If
End Sub
----------------------
Since you only have two questions, you only need to worry about determining if the first one is active. If it is, you set the TOP property of the second question to it's default position value (ie. you keep it in place). If the first question is not used, you then bump the up the 2nd question to the position of the first.
Using this code in the OnCurrent event while cause access to re-evaluate where the second question should be located each time a the form moves to a different record.
Hopefully I was clear in my description on how to accomplish this. Good luck!
js
[This message has been edited by jstutz (edited 10-12-2001).]
[This message has been edited by jstutz (edited 10-12-2001).]