Microsoft KB Archive/143041

= How To Call a Visual Basic 4.0 OLE Server from Excel 5.0 =

Article ID: 143041

Article Last Modified on 6/29/2004

-

APPLIES TO


 * Microsoft Visual Basic 4.0 Standard Edition
 * Microsoft Visual Basic 4.0 Professional Edition
 * Microsoft Visual Basic 4.0 Professional Edition
 * Microsoft Visual Basic 4.0 16-bit Enterprise Edition
 * Microsoft Visual Basic 4.0 32-Bit Enterprise Edition

-



This article was previously published under Q143041



SUMMARY
Visual Basic 4.0 not only allows you to build OLE Servers but also to build applications that can use them. Microsoft Excel 5.0 is an OLE Automation Client application, and can therefore be used to call methods and properties from OLE servers created with Visual Basic 4.0. This article describes the process of using OLE servers created by Visual Basic 4.0 with Excel 5.0.

The example is using the OLE server example created in the Microsoft Knowledge Base:

129801 How To Create and Use a Minimal OLE Automation Server



MORE INFORMATION
Prior to following this example, make sure you have built the OLE Server discussed in 129801, and have built an EXE file.

Steps to Use a Visual Basic 4.0 OLE Server with Excel 5.0
 Start Excel 5.0 with the default workbook, Book1. Select the Excel Insert menu and choose the Macro/Module item from this menu. This will insert a Visual Basic code module into our new workbook. Select the Excel Tools menu and choose the References item. This will bring up the References dialog box. From the References dialog box, select the browse button. This will bring up the Browse dialog box. In the FileName section of the browse dialog box, change the listings to *.EXE. This will allow us to look for our OLE Server we have already created as an executable file. Use the dialog box to move to the drive and directory containing the OLE server and select it. Then select the OK button. Now you will see Project1 in the Available References box in the References dialog box. Project1 should be checked; if it is not, then check it. Once you confirm Project1 is in the list and checked, click the OK button. You now have a reference to the OLE server in Excel.</li>  Place the following code into the code module. Sub CallServer

Dim MyObj As Object

Set MyObj = CreateObject("Project1.Class1")

MsgBox MyObj.MyString MsgBox MyObj.MyFunction

Set MyObj = Nothing

End Sub Note the parentheses following the line MsgBox MyObj.Myfunction. The parentheses are not required when calling an OLE Server from Visual Basic 4.0, but they are required when you call an OLE Server from Excel 5.0. </li> Now select the Excel Run menu and select the Start item. When this subroutine executes, you will get two message boxes. The first one will say "Life is like a box of chocolates." and the second one will say "You never know what you're gonna get."</li></ol>

Keywords: kbhowto kbinterop kbprogramming KB143041

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.