OFF97: Custom Office Assistant Balloon Cannot Be Dismissed (164681)
The information in this article applies to:
- Microsoft Excel 97 for Windows
- Microsoft Word 97 for Windows
- Microsoft PowerPoint 97 for Windows
This article was previously published under Q164681 SYMPTOMS
In the programs listed at the beginning of this article, if you run a
Microsoft Visual Basic for Applications macro that displays a custom
Microsoft Office Assistant balloon, the following problems may occur:
CAUSE
These problems may occur when the following conditions are true:
- In the Visual Basic macro, you use the Callback property to set the
name of a macro to run when a modeless custom Office Assistant balloon
is displayed.
-and-
- You set the Callback property to refer to a nonexistent macro, or you
incorrectly use the Callback property to refer to a macro that does
exist.
-and-
- You run the Visual Basic macro, which then displays the custom Office
Assistant balloon.
RESOLUTION
To prevent these problems from occurring, do the following:
- Verify that you did not misspell the macro name that the Callback
property refers to.
For example, if you set the Callback property to refer to a macro named
"Hello," make sure that the Hello macro exists in a project for the
document.
- If the macro that the Callback property refers to is in a different
module in the same document, add the module name to the beginning of
the macro name.
For example, if you want the Callback property to refer to the macro
named "Goodbye" in Module3, set the Callback property to
Module3.Goodbye.
NOTE: This requirement does NOT apply to Microsoft Excel 97.
If one of these problems already occurred, quit and restart the program in
which the problem occurs. After you do this, modify the Visual Basic for
Applications code so that the Callback property refers to the correct
macro name in a valid location.
Note that you can dismiss the Office Assistant window by clicking the Close
button in the upper-right corner of the Office Assistant window while the
custom Office Assistant balloon is displayed.
STATUS
Microsoft has confirmed this to be a problem in the Microsoft products
listed at the beginning of this article. We are researching this problem
and will post new information here in the Microsoft Knowledge Base as it
becomes available.
MORE INFORMATIONMicrosoft 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.
In the Office 97 programs, you can create and display custom Office
Assistant balloons. To do this, use Visual Basic for Applications macros
that are similar to the following examples:
' Both macros are contained in the same module, Module1.
Sub BalloonTest()
Dim Bln As Balloon
Set Bln = Assistant.NewBalloon
With Bln
.Heading = "Heading"
.Text = "Some text."
.Mode = msoModeModeless ' Make the balloon modeless.
.Callback = "Goodbye" ' Run this macro when OK is clicked.
.Show ' Display the balloon.
End With
End Sub
Sub Goodbye(Bln As Balloon, iBtn As Long, iPriv As Long)
Assistant.Animation = msoAnimationSearching
MsgBox "Goodbye!"
Bln.Close
End Sub
When you run the BalloonTest Sub procedure, the Office Assistant window
appears and displays the custom balloon. When you click OK in the balloon,
the Goodbye Sub procedure runs and displays a message box. When you dismiss
the message box, the Office Assistant balloon disappears. This behavior is
correct.
If you set the Callback property so that it refers to a misspelled macro
name or an incorrect location, the problem described in this article
occurs.
NOTE: In Microsoft Word 97 and Microsoft PowerPoint 97, if you set the
Callback property to refer to a macro that exists in another module, you
must specify the module name before the macro name. For example, if you
move the macro Goodbye to Module3, change the code to the following:
.Callback = "Module3.Goodbye"
If you do not specify the module name, the problem occurs when you display
the custom Office Assistant balloon. In Microsoft Excel 97, this is not
required if the macro exists in the same workbook.
Modification Type: | Major | Last Reviewed: | 6/18/2005 |
---|
Keywords: | kbcode kbinterop kbprb kbProgramming KB164681 |
---|
|