Selected Answer
This is a tall order for VBA. I think they use Java on web pages. However, if you want to do it with VBA you would need to establish a "normal" for the form, say 500pts for the form's height. From that "normal" you calculate a ratio. Say, if Application.Height = 650 then the ratio?would be?650/500 = 1.3 which is equal to 130%.
Now you need to go through every height of the form itself and every control in it and the font size in each control and multiply with the ratio you found. You can use a different ratio for the width but efficiency would dictate that you use the same. Remember to also change the Top and Left properties.
Actually it sounds more awesome than it is. Spend a little time to create a loop and it can be done in a jiffy. Use Me.Controls("Controlname") to identify controls in the loop. Create an array of the control names and use it as shown below.
Dim Arr() As String
Dim Radio As Single
Dim i As Long
Ratio = Application.Height/500
Arr = Split("Tbx1,Tbx2,Cbx1,Cbx2,Lbl1,Lbl2", ",")
' and then
For i = 0 to UBound(Arr)
With Me.Controls(Arr(i))
.Height = .Height * Ratio
.Top = .Top * Ratio
.Font.Size = .Font.Size * Ratio
End With
Next i