XL98: Number Signs (#) May Appear in Recorded Macros (181569)



The information in this article applies to:

  • Microsoft Excel 98 Macintosh Edition

This article was previously published under Q181569

SYMPTOMS

When you record a Visual Basic for Applications macro in Microsoft Excel 98 Macintosh Edition, numbers in the recorded code may be followed by number signs (#), as in the following example:
   ActiveSheet.Shapes.AddShape(msoShapeRectangle, 27.75, 6#, _
       223#, 118#).Select
				

CAUSE

If the values are the Double type, Microsoft Excel 98 Macintosh Edition adds number signs to values when you record a macro. Microsoft Excel adds number signs only to values that are whole numbers followed by ".0" (for example, 6.0, 118.0, and so on). This behavior does not occur when values are not whole numbers (for example, 27.75 or 15.5).

RESOLUTION

The number signs in the recorded macro do not cause any problems, and it is not necessary to remove them. However, you can remove the number signs without affecting the functionality of the macro.

STATUS

This behavior is by design of Microsoft Excel 98 Macintosh Edition.

MORE INFORMATION

In Visual Basic for Applications, number signs are used to indicate that the number to which they are attached is the Double type, for example:

115#

When you record a Visual Basic for Applications macro, Microsoft Excel may automatically set recorded numbers that are whole numbers to the Double type by adding a number sign after each number. This behavior does not affect the functionality of the macro in any way.

You can also observe this behavior by typing the following subroutine into a new Visual Basic module:
   Sub Test()
       Dim X As Integer
       X = 3.0 + 5.0
   End Sub
				
When you enter the third line of code, the values in the line are converted into the Double type:
   X = 3# + 5#
				
This is an automatic feature in Visual Basic for Applications. If you enter the following line of code instead
   X = 3 + 5
				
the values are not converted into the Double type, because the values do not end in ".0."

Modification Type:MajorLast Reviewed:9/11/2002
Keywords:kbprb KB181569