Article ID: 184482
Article Last Modified on 1/22/2007
APPLIES TO
- Microsoft Word 97 Standard Edition
This article was previously published under Q184482
SYMPTOMS
When you are compiling a module that attempts to show a UserForm contained in
another
Visual Basic for Applications project, the "Object Required"
error
message appears.
CAUSE
Microsoft Word cannot directly show a UserForm that is contained in another
Visual Basic for Applications project.
WORKAROUND
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 a Microsoft Certified Partner or the Microsoft fee-based
consulting line at (800) 936-5200. For more information about Microsoft Certified
Partners, please visit the following Microsoft Web site:
For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
In the following Visual Basic for Applications example, two projects are
used: Project1 and Project2. Project1 contains the macro code that calls Project
2.
Project2 displays the UserForm. In this example, both UserForms can have
the
same name, because the
.Show method always shows the UserForm in the
current
project.
- Make sure that each project has a unique name (as shown in the Properties window for each project).
- In the Project Explorer window, select Project1.
- On the Tools menu, click References.
- In the "References - VBAProject1" dialog box, click to select the
Project2 check box, and then click OK.
- In a module sheet in VBAProject1, enter the following code:
Sub Test1()
Application.Run "ProjectTemplate.Module1.Test2"
'call the subroutine in Project2
End Sub
- In a module sheet in Project2, enter the following code:
Sub Test2()
UserForm1.Show
End Sub
- Run the "Test1" macro in Project1.
The UserForm in Project2 now appears without generating an "Object
Required"
error message.
REFERENCES
For more information about getting help with Visual Basic for
Applications,
please see the following article in the Microsoft Knowledge Base:
163435 VBA: Programming Resources for Visual Basic for Applications
Additional query words: vb vba vbe
Keywords: kbprb KB184482