This is the code I used for my retreive macro
Sub Retreive()
' Create and initialize the necessary objects
Dim OraSession As Object
Dim OraDatabase As Object
Dim GradeDynaset As Object
Dim ColNames As Object
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase("beq-local.world", "name/password", 0&)
Set GradeDynaset = OraDatabase.DbCreateDynaset("select * from exercise2", 0&)
Set ColNames = GradeDynaset.Fields
For icols = 1 To ColNames.Count
Worksheets("Sheet1").Cells(1, (icols + 1)).Value = ColNames(icols - 1).Name
Next
GradeDynaset.CopyToClipboard -1
Sheets("newsheet").Select
Range("B2").Select
ActiveSheet.Paste
End Sub