XL97: Number Signs (#) May Appear in Recorded Macros

Last reviewed: March 6, 1998
Article ID: Q167724
The information in this article applies to:
  • Microsoft Excel 97 for Windows

SYMPTOMS

When you record a Visual Basic for Applications macro in Microsoft Excel 97, 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 97 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 97.

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."


Additional query words: XL97 single variant integer long pound symbol
Keywords : xldraw xlvbainfo kbcode kbprg
Version : WINDOWS:97
Platform : WINDOWS
Issue type : kbprb
Solution Type : kbworkaround


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: March 6, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.