"Roy" <(E-Mail Removed)> wrote in message
news:C6994D7E-7B28-4C7D-BB42-(E-Mail Removed)...
> How Can I tell Excel 2000 to ignore VBA command that are not implemented
> in
> 2000, but in later version?
>
> "#If VB6 Then" is 'TRUE' for 2000, 2002 and 2003, so I cannot use it. I
> want
> to use the .mask feature on a command button in 2002 and 2003, but I want
> the
> same code to compile under 2000 and ignore the .mask line.
>
> With MenuItem
> .Caption = "My Button"
> .Mask = frmIcons.Image1.Picture
> End With
>
> Also 'Application.Version' doesn't work as a compiler directive.
> I need a way for a # compiler command to distinguish between 2000 , 2002
> and
> Excel 2003.
Hi Roy,
There is no compiler variable that distinguishes among different
versions of Excel. What you'd need to do in this case is use late binding by
declaring MenuItem As Object and then use an Application.Version check to
determine which code to actually execute at run-time:
Dim MenuItem As Object
' Set the MenuItem variable here
MenuItem.Caption = "My Button"
If Val(Application.Version) > 9 Then
MenuItem.Mask = frmIcons.Image1.Picture
End If
--
Rob Bovey, Excel MVP
Application Professionals
http://www.appspro.com/
* Take your Excel development skills to the next level.
* Professional Excel Development
http://www.appspro.com/Books/Books.htm