WD: CALL Statement Cannot Accept Variable Argument

Last reviewed: February 2, 1998
Article ID: Q94734
The information in this article applies to:
  • Microsoft Word for Windows, versions 2.0, 2.0a, 2.0a-CD, 2.0b, 2.0c, 6.0, 6.0a, 6.0c
  • Microsoft Word for Windows 95, versions 7.0, 7.0a
  • Word for the Macintosh, versions 6.0, 6.0.1, 6.0.1a

SYMPTOMS

In Word, you can use the WordBasic CALL statement to run another macro; however, you cannot specify the name of the subroutine by using a string variable or concatenated strings.

WORKAROUND

In cases where the name of the macro originates from a string variable (such as when you type information in a dialog box), you can use the following macro code:

If A$ contains the name of the macro, use this statement:

   ToolsMacro .Name = A$, .Run

In cases where you call a literal string such as "AutoExec.Main", you must remove the quotation marks, as shown in the following example:

   CALL AutoExec.Main

NOTE: You cannot pass parameters to a macro by using the Run method.

MORE INFORMATION

The CALL statement uses the following syntax to call another subroutine

   CALL <subroutinename>

where <subroutinename> is the name of the subroutine.

In WordBasic, you can also use the CALL statement to run another macro using the following syntax:

   CALL macroname.Main   'runs entire macro (the Main subroutine)

In all cases, the argument for the CALL statement must be explicitly defined. For example, both

   CALL A$

    -and-

   CALL "AutoExec.main"

cause the error:

WordBasic Error 124: Undefined Sub or Function.


Additional query words: function sub routine err msg errmsg macword
Keywords : macword winword winword2 word6 kbmacro
Version : WINDOWS:2.0,2.0a,2.0a-CD,2.0b,2.0c,6.0,6.0a,6.0c,7.0,7.0a; MACINTOSH:6.0,6.0.1,6.0.1a
Platform : MACINTOSH Win95 WINDOWS winnt
Issue type : kbinfo
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: February 2, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.