I have a test project I’m using to familiarise myself with VB6. Just a listbox, a button to get info, and a button to clear info:

Code:
Option Explicit
Private Sub btnGet_Click()
lstResults.DataSource = GetMenuItems
End Sub
Private Sub btnClear_Click()
lstResults.Clear
End Sub
Public Function GetMenuItems() As ADODB.Recordset
Dim rs As ADODB.Recordset
Dim conn As New ADODB.Connection
conn.ConnectionString = "File Name=C:\connString.udl"
Dim cmd As New ADODB.Command
Set cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "dbo.GetMenuItems"
Set rs = cmd.Execute()
GetMenuItems = rs
End Function
The following error appears when I click the Get Items button (btnGet):
Compile Error: Method or Data Member Not Found
At first I thought it might be something to do with the event/button, that some sort of binding between them wasn’t present. But just putting in something like “MsgBox(“Hello”)” works fine. Yet it doesn’t even seems to get to the line where the GetMenuItems function is called before throwing the error.
This being my first whirl with VB, I’m a little stumped.
EDIT – I’ve had a look at the UDL file I was using too. Tested that and its connecting ok on its own.
In
Sub btnGet_Click, useAssigning object references without using
Setis hardly ever the right thing to do. For what it’s worth, omittingSetreferences the left-hand side’s default property; this was part of VB6 (OK, VB4, when classes were introduced) as a help to VB3 programmers, before there were such things as objects. Whatever kind of objectlstResults.DataSourcereturns likely does not have a default property, leading to the “Method or data member not found” error.