Я пытаюсь перебрать поля в каждом наборе записей и добавить их значения в мою таблицу Excel 2007.
У меня есть следующий код, но я получаю «Объект не поддерживает это свойство» всякий раз, когда оно достигает « Для каждого x In .. » Ячто-то упустил?Нужно ли добавлять дополнительные ссылки в VBA для использования .Fields?В настоящее время я использую Microsoft ActiveX Data Objects 6.0 Library в своих ссылках.SQL запрашивает базу данных Oracle, но я не думаю, что это имеет значение в этой ошибке.
Set recSet = newConn.getOpenIncidents("exampleworkgroup")
Set Path = ThisWorkbook.Worksheets("Incidents")
iRow = 2
With Path
iCol = 1
For Each x In recSet.Fields
.Cells(iRow, iCol).Value = x.Value 'Customer Name
iCol = iCol + 1
Next
End With
И это код для функции в моем классе
Public Function getOpenIncidents(ByVal wrkgp As String)
Set rs = New ADODB.Recordset
Dim SQL As String
SQL = "SELECT intbl.cust_ky, intbl.incid_id, intbl.OPEN_TS, intbl.CLOSE_TS, wrkgptbl.wrkgp_id, intbl.incid_ttl_dn " _
& "FROM (MAIN.testtable intbl INNER JOIN MAIN.wrkgrp wrkgptbl ON intbl.curr_wrkgp_ky=wrkgptbl.wrkgp_ky) " _
& "WHERE wrkgptbl.wrkgp_id='" & wrkgp & "'"
rs.Open SQL, con, adOpenKeyset
rs.MoveFirst
getOpenIncidents = rs
End Function