XL: Macro to Determine If a Number Is Even or Odd

ID: Q150374

The information in this article applies to:

SUMMARY

In Microsoft Excel, you can use the IsEven and IsOdd functions, included in the Microsoft Excel Analysis ToolPak, to determine if a number is even or odd.

MORE INFORMATION

To use the IsEven and IsOdd functions within a Visual Basic macro in Microsoft Excel, you must first create a reference to the Analysis ToolPak Visual Basic add-in file included with Microsoft Excel. To do this, follow these steps:

1. Switch to your Visual Basic module.

2. On the Tools menu, click References.

3. In the list of Available References, click to select ATPVBAEN.XLA

   (Microsoft Excel for Windows) or "Analysis ToolPak - VBA" (Microsoft
   Excel for the Macintosh). Click OK.

If the proper entry does not appear in the list, follow these steps:

1. Click Browse.

2. In Microsoft Excel 97 for Windows, use the dialog box to navigate to the

   Office\Library\Analysis folder. In Microsoft Excel 5.0 or 7.0, navigate
   to the Excel\Library\Analysis folder. In Microsoft Excel 98 Macintosh
   Edition, navigate to the 'Microsoft Office 98:Office:Excel Add-
   ins:Analysis Toolpak' folder. In Microsoft Excel 5.0 for the Macintosh,
   navigate to the 'Microsoft Excel:Macro Library:Analysis Tools' folder.

   Select the appropriate add-in file as indicated in step 3, in the
   previous section, and then click OK twice.

You can now use the IsEven and IsOdd functions to determine whether a value is even or odd.

Example

The following Visual Basic example tests the counter variable in a For...Next Loop to determine if the counter value is even or odd.

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

   http://www.microsoft.com/support/supportnet/refguide/

   Sub EvenOrOdd()

       'Enter loop
       For Counter = 1 To 5

           'Use the IsEven function to determine whether or not the number
           'being tested is even: a return value of False means the number
           'is odd. You could alternatively use the IsOdd function.
           ValueIsEven = IsEven(Counter)

           'If ValueIsEven is true, then...
           If ValueIsEven = True Then

               '...display a message box stating so.
               MsgBox "The value " & Counter & " is even."

           'Otherwise...
           Else

               '...display a message box stating that the value is odd.
               MsgBox "The value " & Counter & " is odd."
           End If

       Next Counter
   End Sub

REFERENCES

For more information about the IsEven and IsOdd functions, click the Index tab in Microsoft Excel 7.0 Help, type the following text

   iseven

and then double-click the selected text to go to the "ISEVEN worksheet function" topic.

Additional query words: 5.00 7.00 97 8.00 98 XL98 XL97 XL7 XL5

Keywords          : kbcode kbprg xlvbahowto 
Version           : WINDOWS:5.0,7.0,97; MACINTOSH:5.0,98
Platform          : MACINTOSH WINDOWS

Last Reviewed: May 17, 1999