Microsoft KB Archive/150374

= Macro to Determine If a Number Is Even or Odd =

Article ID: 150374

Article Last Modified on 10/10/2006

-

APPLIES TO


 * Microsoft Excel 97 Standard Edition
 * Microsoft Excel 95 Standard Edition
 * Microsoft Excel 5.0 Standard Edition
 * Microsoft Excel 98 for Macintosh

-



This article was previously published under Q150374



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. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers 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 requirements. 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

