1
다음 코드를 작성하여 oracle DB에서 테이블의 데이터를 가져오고 VBA 매크로를 사용하여 데이터를 Excel 시트로 덤프합니다.
DB의 테이블에서 데이터를 검색하고 엑셀 시트에 덤프합니다. Excel에서는 첫 번째 행을 반복해서 표시합니다. 예를 들어, DB에 45 개의 다른 행이 반환되면 Excel 시트에 45 개의 행이 반환되지만 Excel의 모든 45 개의 행은 첫 번째 행이 DB 인 것과 같습니다. DB에서 정확한 행을 얻는 방법Excel에서 매크로 VBA를 사용하여 Oracle 테이블에서 Excel로 데이터 가져 오기
하위 결과()
Dim SQL As String
Dim OraDynaSet As Object
Dim i As Integer
SQL = "Select * from Employee where EmpID=20"
Set OraDynaSet = objDataBase.DBCreateDynaset(SQL, 0&)
If OraDynaSet.RecordCount > 0 Then
'There were records retrieved
OraDynaSet.MoveFirst
For ICOLS = 0 To OraDynaSet.Fields.Count - 1
.Cells(1, ICOLS + 1).Value = OraDynaSet.Fields(ICOLS).Name
Next ICOLS
'Loop the recordset for returned rows
For i = 0 To OraDynaSet.RecordCount - 1
For j = 0 To ICOLS - 1
.Cells(2 + i, j + 1) = OraDynaSet.Fields(j).Value
Next j
Next i
Else
MsgBox "No Matching records found"
End If
End Sub
나는 "다음 J"후 "OraDynaSet.MoveNext"을 부여해야 .......... 대답을 얻었다 ...... .....이 변경 사항이 적용되면 제대로 작동합니다. – tester