ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   VSTO Excel 2003 to VB 6.0 Type Mismatch (https://www.excelbanter.com/excel-programming/436794-vsto-excel-2003-vbulletin-6-0-type-mismatch.html)

Light

VSTO Excel 2003 to VB 6.0 Type Mismatch
 
Hi,

I have an Addin 2003 Application. In this Application I'm calling an VB 6.0
Dll and I send Excel Application Object as Parameter. In VB Project I'm using
Workbook_Open event with WithEvents. I have a messagebox there. Unfortunately
when i call VB dll , I get this Error Message -- Type mismatch.

Is there any Idea?

Code in VS2008 :
private Project1.Class1 vbapp;

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
#region VSTO generated code

this.Application =
(Excel.Application)Microsoft.Office.Tools.Excel.Ex celLocale1033Proxy.Wrap(typeof(Excel.Application), this.Application);

#endregion

vbapp = new Class1();
object myAppObject = Globals.ThisAddIn.Application;
try
{
vbapp.AttachApplication(ref myAppObject);
}
catch (Exception ex)
{
}

Code in VB:
Dim WithEvents mExcelApp As Excel.Application

Public Sub AttachApplication(xlApp As Object)
Set mExcelApp = xlApp

End Sub

Private Sub mExcelApp_NewWorkbook(ByVal Wb As Excel.Workbook)
Call MsgBox("New Workbook opened")
End Sub

Private Sub mExcelApp_WorkbookOpen(ByVal Wb As Excel.Workbook)
Call MsgBox("Excel WorkBook opened" + Wb.Name)
End Sub


Peter T

VSTO Excel 2003 to VB 6.0 Type Mismatch
 
VSTO + VB6 = unusual !

Where are you "calling" your VB6 (some public procedure in a public class in
the VB6 ActiveX dll that you have instanciated in VSTO presumably) and on
what line do you get the error. Or do you mean the VB6 withevents class is
up and running and errors in an mExcelApp event.

Regards,
Peter T


"light" wrote in message
...
Hi,

I have an Addin 2003 Application. In this Application I'm calling an VB
6.0
Dll and I send Excel Application Object as Parameter. In VB Project I'm
using
Workbook_Open event with WithEvents. I have a messagebox there.
Unfortunately
when i call VB dll , I get this Error Message -- Type mismatch.

Is there any Idea?

Code in VS2008 :
private Project1.Class1 vbapp;

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
#region VSTO generated code

this.Application =
(Excel.Application)Microsoft.Office.Tools.Excel.Ex celLocale1033Proxy.Wrap(typeof(Excel.Application),
this.Application);

#endregion

vbapp = new Class1();
object myAppObject = Globals.ThisAddIn.Application;
try
{
vbapp.AttachApplication(ref myAppObject);
}
catch (Exception ex)
{
}

Code in VB:
Dim WithEvents mExcelApp As Excel.Application

Public Sub AttachApplication(xlApp As Object)
Set mExcelApp = xlApp

End Sub

Private Sub mExcelApp_NewWorkbook(ByVal Wb As Excel.Workbook)
Call MsgBox("New Workbook opened")
End Sub

Private Sub mExcelApp_WorkbookOpen(ByVal Wb As Excel.Workbook)
Call MsgBox("Excel WorkBook opened" + Wb.Name)
End Sub





All times are GMT +1. The time now is 10:28 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com