У меня есть внешняя программа, которая экспортирует данные в файлы CSV. Мои пользователи хотели бы иметь доступ к этим данным через функцию VBA в Excel. Чтобы сделать это, я подумал о том, чтобы обернуть прочитанный файл CSV в функцию, которая возвращает ADODB.Recordset. Мой код
Public Function getData(fileName As String) As ADODB.Recordset
Dim path As String
path = "C:\testDir\"
Dim cN As New ADODB.Connection
Dim RS As New ADODB.Recordset
cN.Open ("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & path & ";" & _
"Extended Properties=""text; HDR=Yes; FMT=Delimited; IMEX=1;""")
RS.ActiveConnection = cN
RS.Source = "select * from " & fileName
Set getData = RS
End Function
Я пытаюсь вызвать эту функцию, используя
Dim a As ADODB.Recordset
Set a = getData("testFile.csv")
a.Open()
В этот момент я получаю сообщение об ошибке компиляции, говорящее «=». Может ли кто-нибудь указать мне правильное направление, как я должен вызывать свою функцию и перебирать данные?