View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
Harald Staff[_4_] Harald Staff[_4_] is offline
external usenet poster
 
Posts: 70
Default Versioning Question

Hi Bob

It errs on 97 because vbModeless is unknown. The trick is to place that into an isolated
sub that won't be called in 97:

Sub Main()
Select Case Val(Application.Version)
Case 8
UserForm1.Show
Case 9 To 99
Call Modeles
Case Else
End Select
End Sub

Private Sub Modeles()
UserForm1.Show vbModeless
End Sub

--
HTH. Best wishes Harald
Excel MVP

Followup to newsgroup only please.

"Bob Phillips" wrote in message
...
ExcelMan,

Have you tried

If Application.Version 8 Then
UserForm1.Show vbModeless
Else
UserForm1.Show
End If


--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"ExcelMan" wrote in message
...
Is there a way to use a VBA feature in Excel 2000 when running in Excel
2000, but have the system not us it when running in Excel 97?

I've created a modeless dialog box for my application. I want it to run

in
Excel 2000 (and it does) but when I try to run the app in Excel 97 I get a
compile error because Excel 97 does not accept the vbModeless parameter
after the Form.Show command.

I've tried containing it in a If statment, but that doesn't solve the
problem.

Is there anything equivalent to the precompiler statements in C that I can
use here?

Thanks.